我が社のツイッターでは過去にlinuxのTips(ヒント、ノウハウ等)をツイートしていたことがありました。
その過去記事をここでまとめて紹介します。
Linuxのリダイレクト記号に「2>&1」があるが、
— EYES-SOFTWARE (@eyessoftware) September 20, 2015
「コマンド &> ファイル」と「コマンド > ファイル 2>&1」は全く同じ動作になる。
両者ともファイルに標準出力と標準エラー出力が書き込まれる。
killコマンドとkillallコマンドは指定したプロセスにシグナルを送るという動作だが、前者はプロセスIDを指定し、後者はプロセス名を指定するという違いがある。
— EYES-SOFTWARE (@eyessoftware) September 27, 2015
@eyessoftware pkill って知ってる? by 別の中の人
— EYES-SOFTWARE (@eyessoftware) September 27, 2015
ハードリンクはリンク元とリンク先のiノード番号が同じだが、シンボリックリンクは別のiノード番号となる#Linux
— EYES-SOFTWARE (@eyessoftware) October 11, 2015
「'」シングルクォーテーションで囲んだ中は文字列として解釈され、「`」バッククォーテーションで囲んだ中はコマンドが記述されていれば、コマンドの結果が表示される#Linux
— EYES-SOFTWARE (@eyessoftware) October 18, 2015
dpkgコマンドのオプション「-s」は「–status」。パッケージの情報を表示する。「-S」は「–search」。指定したファイルがどのパッケージからインストールされたかを表示する。#Linux
— EYES-SOFTWARE (@eyessoftware) October 25, 2015
「gzip -d file.gz」と「gunzip file.gz」は両方ともにfile.gzの解凍を行う。同様に「bzip2 -d file.bz2」と「bunzip2 file.bz2」も両方ともにfile.bz2の解凍を行う。#Linux
— EYES-SOFTWARE (@eyessoftware) November 1, 2015
正規表現のパターン「.*」を文字列として検索したい場合は、
— EYES-SOFTWARE (@eyessoftware) November 8, 2015
grep -F '.*' test.txt か fgrep '.*' test.txt
で検索可能#Linux
@eyessoftware grep \\\.\\\* test.txt とすれば同じことができます。\はエスケープ記号なので、grepには\.\*が渡ります。grepの中でも\を取って.*を検索します。.と*はワイルドカードなので\がないと全検索になります。 by 別の中の人
— EYES-SOFTWARE (@eyessoftware) November 8, 2015
圧縮率の高い順
— EYES-SOFTWARE (@eyessoftware) November 15, 2015
xz > bzip2 > gzip#Linux
ファイルシステムのチェックを行うコマンドで、自動的に修復するには、以下のコマンドオプション。
— EYES-SOFTWARE (@eyessoftware) November 15, 2015
fsck -a
e2fsck -p#Linux
正規表現で「?」は直前の文字の0回もしくは1回の繰り返し。
— EYES-SOFTWARE (@eyessoftware) November 22, 2015
「+」は直前の文字の1回以上の繰り返し。#linux
mkdirコマンドの「-m」オプションはアクセス権を指定でき、「-p」オプションは親ディレクトリも同時に作成する。#linux
— EYES-SOFTWARE (@eyessoftware) November 22, 2015
mkdir -p 700 test
— EYES-SOFTWARE (@eyessoftware) November 29, 2015
このコマンドを実行するとどうなる?#Linux
先週の三択問題「mkdir -p 700 test」を実行すると、「700とtestが生成」でした。
— EYES-SOFTWARE (@eyessoftware) December 6, 2015
touchコマンドを使ってアクセス時刻だけ変更する場合、正しいオプションは?
— EYES-SOFTWARE (@eyessoftware) December 6, 2015
touchコマンドでアクセス時間を変える場合、
— EYES-SOFTWARE (@eyessoftware) December 14, 2015
touch -at 201511011000 file
-atオプションが正解です
cutコマンドで区切り文字を指定するオプションは次のうちどれ?
— EYES-SOFTWARE (@eyessoftware) December 14, 2015
前回の問題「cutコマンドで区切り文字を指定するオプションは次のうちどれ?」は、-dが正解でした。
— EYES-SOFTWARE (@eyessoftware) December 20, 2015
・・・なかなか投票する人いなくて寂しいなぁ
めげずに次行ってみよう!
— EYES-SOFTWARE (@eyessoftware) December 20, 2015
$ umask
0022
umaskコマンド実行し、このように表示された場合、「mkdir testdir」を実行した時のアクセス権は?
前回のumaskの問題、「umaskコマンド実行し、このように表示された場合、「mkdir testdir」を実行した時のアクセス権は?」の答えは755が正解でした
— EYES-SOFTWARE (@eyessoftware) December 27, 2015
rpmコマンドを使ってパッケージをアンインストールするときに必要なオプションは?
— EYES-SOFTWARE (@eyessoftware) December 27, 2015
rpmコマンドの正解は、-eでした。アンインストールする際には-eです。お間違えなく。
— EYES-SOFTWARE (@eyessoftware) January 3, 2016
次のコマンドのうち、testプロセスの実行優先度が最も高いのはどれでしょう。
— EYES-SOFTWARE (@eyessoftware) January 11, 2016
# Linux
tarコマンドを使って、アーカイブを作成するときに指定するオプションは次のうち、どれでしょう。
— EYES-SOFTWARE (@eyessoftware) January 17, 2016
前回の「tarコマンドを使って、アーカイブを作成する」オプションは-cが正解でした。
— EYES-SOFTWARE (@eyessoftware) January 24, 2016
viエディタで扱う動作モードのうち、無いものはどれでしょう。
— EYES-SOFTWARE (@eyessoftware) January 24, 2016
viエディタの問題、正解は「編集モード」でした。
— EYES-SOFTWARE (@eyessoftware) January 31, 2016
実行したコマンドの履歴は、historyコマンドで確認できます。デフォルトの履歴を残す数は次のうち、どれでしょう。
— EYES-SOFTWARE (@eyessoftware) January 31, 2016
historyコマンドのデフォルトの履歴を残す数は1000が正解でした。
— EYES-SOFTWARE (@eyessoftware) February 7, 2016
grepコマンドの結果に行番号も表示したい場合、つけるべきオプションは次のうちどれでしょう。
— EYES-SOFTWARE (@eyessoftware) February 7, 2016
前回のgrepコマンドの問題、正解は「-n」でした。
— EYES-SOFTWARE (@eyessoftware) February 14, 2016
「-i」は大文字と小文字を区別せずに検索し、「-v」はパターンがマッチしない行を表示します。#Linux
「data」というファイルの種別を知りたい場合、次のうちのどのコマンドを使用すればよいでしょうか。#Linux
— EYES-SOFTWARE (@eyessoftware) February 14, 2016
前回の「「data」というファイルの種別を知りたい場合、次のうちのどのコマンドを使用すればよいでしょうか。」という問題。正解はfileでした。
— EYES-SOFTWARE (@eyessoftware) February 23, 2016
lessはテキストを表示。kindは存在しないコマンド。touchはファイルのタイムスタンプを変更します。
killコマンドを使って、特定のプロセスにシグナルを送ることができますが、強制終了させたい場合に指定するシグナルIDは、次のうちどれでしょう。#Linux
— EYES-SOFTWARE (@eyessoftware) February 23, 2016
前回の「killコマンドを使って、特定のプロセスにシグナルを送ることができますが、強制終了させたい場合に指定するシグナルIDは、次のうちどれでしょう。」の解答は「9」でした#Linux
— EYES-SOFTWARE (@eyessoftware) February 28, 2016
shutdownコマンドを使って、5分後に再起動したい場合、次のうちどのオプションを付ければよいでしょう?#Linux
— EYES-SOFTWARE (@eyessoftware) February 28, 2016
先々週の問題「shutdownコマンドを使って、5分後に再起動したい場合、次のうちどのオプションを付ければよいでしょう?」の解答は「shutdown -r +5」でした
— EYES-SOFTWARE (@eyessoftware) March 14, 2016
「-r」が再起動するときにつけるオプションで、「+5」が5分後という意味になります。
コマンドの実行結果をファイルに出力するとともに、画面上にも表示するコマンドは次のうちどれでしょう?
— EYES-SOFTWARE (@eyessoftware) March 14, 2016
先週の「コマンドの実行結果をファイルに出力するとともに、画面上にも表示するコマンドは次のうちどれでしょう?」の問題の答えはteeコマンドでした。teeコマンドはその名の通り、標準入力からファイルと標準出力へT字型に分岐させます。
— EYES-SOFTWARE (@eyessoftware) March 22, 2016
圧縮されたファイル「datafile.gz」をオプション無しで解凍したい場合、次のうち、どのコマンドを使えばよいでしょう?
— EYES-SOFTWARE (@eyessoftware) March 22, 2016
先週の「圧縮されたファイル「datafile.gz」をオプション無しで解凍したい場合、次のうち、どのコマンドを使えばよいでしょう?」の解答はgunzipが正解でした。
— EYES-SOFTWARE (@eyessoftware) March 27, 2016
gzipコマンドを使う場合には-dオプションが必要になります。
指定したコマンドの絶対パスを表示するコマンドは、次のうちどれでしょう。
— EYES-SOFTWARE (@eyessoftware) March 27, 2016
先週の問題「指定したコマンドの絶対パスを表示するコマンドはどれか」の解答は「which」でした
— EYES-SOFTWARE (@eyessoftware) April 3, 2016
「locate」はファイルを検索するコマンド
「whereis」は指定されたコマンドのバイナリ、ソースコード、マニュアルの場所を検索
「whichis」は存在しないコマンドでした。
シェルスクリプトに引数を渡した場合、bashでシェルスクリプトファイル名(フルパス)をあらわす特殊な変数は次のうちどれでしょう
— EYES-SOFTWARE (@eyessoftware) April 3, 2016
先週の問題、「シェルスクリプトに引数を渡した場合、bashでシェルスクリプトファイル名(フルパス)をあらわす変数は?」の解答は$0でした。
— EYES-SOFTWARE (@eyessoftware) April 10, 2016
$1、$2はそれぞれ1番目の引数、2番目の引数です。
testコマンドによる条件式の中で、「数値1と数値2が等しければ真」という意味の条件式は次のうちどれでしょう
— EYES-SOFTWARE (@eyessoftware) April 10, 2016
「数値1 -gt 数値2」数値1が数値2より大きい、もしくは等しければ真
— EYES-SOFTWARE (@eyessoftware) April 17, 2016
「数値1 -le 数値2」数値1が数値2より小さい、もしくは等しければ真
でした。
連続した数値を自動的に生成できるコマンドは次のうちどれでしょう
— EYES-SOFTWARE (@eyessoftware) April 17, 2016
先週の「連続した数値を自動的に生成できるコマンドはどれ?」の答えはseqでした。testは条件文を評価するコマンド。execはシェルのプロセスを指定したコマンドのプロセスに置き換えます。readは標準入力からの入力を受け付けます。
— EYES-SOFTWARE (@eyessoftware) April 25, 2016
SQL文の中で、テーブルにレコードを追加するときに使用するのは次のうちどれでしょう
— EYES-SOFTWARE (@eyessoftware) April 25, 2016
前回の問題「SQL文の中で、テーブルにレコードを追加するときに使用するのは次のうちどれでしょう」の答えはINSERTでした。
— EYES-SOFTWARE (@eyessoftware) May 8, 2016
UPDATEはレコードを更新します。
SELECTはレコードを参照します。
ADDRECORDは存在しないSQL文です。
**** var in step1 step2
— EYES-SOFTWARE (@eyessoftware) May 8, 2016
do
echo $ var
done
****に入る文は次のうちどれでしょう
前回の問題「****に入る文は次のうちどれでしょう」の答えは「for」でした。
— EYES-SOFTWARE (@eyessoftware) May 15, 2016
似たようなコマンドに「while」がありますが、こちらは後述の「in」を使いません。
ユーザのパスワードをシャドウ化したときに「/etc/passwd」に記載されるユーザのパスワードはどのような記述になるでしょうか
— EYES-SOFTWARE (@eyessoftware) May 15, 2016
前回の「ユーザのパスワードをシャドウ化したときに「/etc/passwd」に記載されるユーザのパスワードは?」という問題の答えは「x」でした。
— EYES-SOFTWARE (@eyessoftware) May 22, 2016
ルーティングテーブルの表示や操作を行うコマンドは次のうちどれでしょう。
— EYES-SOFTWARE (@eyessoftware) May 22, 2016
前回の問題「ルーティングテーブルの表示や操作を行うコマンドは次のうちどれでしょう」の答えは「route」でした。
— EYES-SOFTWARE (@eyessoftware) May 29, 2016
tracerouteはパケットが伝わる経路を表示します
ncはcatコマンドと同様の動きをネットワーク上で行います
ifconfigはIPアドレスを表示します
システムログの設定で、メールが出力するすべてのログを保存する場合のプライオリティは次のうちのどれでしょう
— EYES-SOFTWARE (@eyessoftware) May 29, 2016