LPIC-1「GNU・Unixコマンド」練習問題(63問・解説つき)
LPIC-1(101/102 試験)「GNU・Unixコマンド」の4択問題集。正解と選択肢ごとの個別解説つきで、過去問対策・例題演習に。
主なテーマ:パイプ・grep/sed・プロセス管理・vi
▶ この分野をクイズ形式で解く第1問 ・ LPIC-1 / GNU・Unixコマンド
ファイルのパーミッションを rwxr-xr-x にするには?
- chmod 644
- chmod 755✓ 正解
- chmod 777
- chmod 700
💡 rwx=7,r-x=5,r-x=5 で755。所有者は全権、グループとその他は読み取り+実行になります。
✕ chmod 644:chmod 644 は rw-r--r-- で実行権が付かず、rwxr-xr-x になりません。
○ chmod 755:正解。7=rwx,5=r-x,5=r-x で755となり rwxr-xr-x を表します。
✕ chmod 777:chmod 777 は rwxrwxrwx で全員に全権限を与え、要求の権限とは異なります。
✕ chmod 700:chmod 700 は rwx------ で所有者のみ全権、グループ/他は無権限になります。
第2問 ・ LPIC-1 / GNU・Unixコマンド
プロセスをリアルタイムに対話的に監視する標準コマンドは?
- ps
- top✓ 正解
- ls
- cat
💡 topはCPUやメモリ使用状況を継続更新で表示します。psは実行時点のスナップショットです。
✕ ps:ps は実行時点のプロセス一覧をスナップショット表示し、リアルタイム更新はしません。
○ top:正解。top はCPU/メモリ使用状況を継続更新して対話的に監視します。
✕ ls:ls はファイル/ディレクトリの一覧表示で、プロセス監視には使えません。
✕ cat:cat はファイル内容の連結表示で、プロセス監視の機能はありません。
第3問 ・ LPIC-1 / GNU・Unixコマンド
標準出力をファイルへ「追記」するリダイレクトは?
- >
- >>✓ 正解
- <
- 2>
💡 >> は既存内容を残して末尾に追記。> は上書き、< は入力、2> は標準エラーのリダイレクトです。
✕ >:> は出力を上書きするリダイレクトで、既存内容は失われ追記にはなりません。
○ >>:正解。>> は既存内容を残して末尾に追記するリダイレクトです。
✕ <:< は標準入力のリダイレクトで、出力の追記とは逆向きです。
✕ 2>:2> は標準エラー出力のリダイレクトで、標準出力の追記ではありません。
第4問 ・ LPIC-1 / GNU・Unixコマンド
テキストから正規表現にマッチする行を抽出するコマンドは?
- grep✓ 正解
- sort
- wc
- cut
💡 grepはパターンに一致する行を抽出します。-E で拡張正規表現、-v で不一致行の抽出ができます。
○ grep:正解。grep は正規表現パターンに一致する行を抽出します(-Eで拡張正規表現)。
✕ sort:sort は行の並べ替えを行うコマンドで、パターン抽出はしません。
✕ wc:wc は行数・単語数・バイト数を数えるコマンドで、行抽出はしません。
✕ cut:cut は行から列(フィールド)を切り出すコマンドで、パターン一致抽出ではありません。
第5問 ・ LPIC-1 / GNU・Unixコマンド
実行中プロセスにシグナルを送って終了させるコマンドは?
- kill✓ 正解
- nice
- jobs
- fg
💡 killはPIDにシグナル送信(既定はSIGTERM)。強制終了は kill -9(SIGKILL)。niceは優先度設定です。
○ kill:正解。kill はPIDにシグナルを送信し(既定SIGTERM)プロセスを終了させます。
✕ nice:nice はプロセスの優先度を指定して起動するコマンドで、終了はさせません。
✕ jobs:jobs はシェルのジョブ一覧表示で、シグナル送信は行いません。
✕ fg:fg は停止/背景ジョブを前面に戻すコマンドで、プロセス終了はしません。
第6問 ・ LPIC-1 / GNU・Unixコマンド
ディレクトリを名前で再帰検索する標準コマンドは?
- find / -name✓ 正解
- grep -r
- locate -u
- which
💡 find <パス> -name <名前> で再帰検索。locateはDB検索で高速ですがupdatedbが前提です。
○ find / -name:正解。find <パス> -name <名前> でディレクトリツリーを再帰的に名前検索します。
✕ grep -r:grep -r はファイル内容の再帰検索で、ファイル名での検索ではありません。
✕ locate -u:locate -u はデータベース(updatedb)の更新オプションで、検索自体はlocateです。
✕ which:which はPATH上の実行コマンドの場所を示すもので、汎用の再帰検索ではありません。
第7問 ・ LPIC-1 / GNU・Unixコマンド
前のコマンドの出力を次のコマンドの入力に渡す記号は?
- 出力をファイルへ
- 前の出力を次の入力へ✓ 正解
- 背景実行
- 末尾に追記
💡 パイプ | は前コマンドの標準出力を次コマンドの標準入力へ渡します。例: ps aux | grep ssh。
✕ 出力をファイルへ:「出力をファイルへ」はリダイレクト>の説明で、コマンド間の受け渡しではありません。
○ 前の出力を次の入力へ:正解。パイプ | は前コマンドの標準出力を次コマンドの標準入力へ渡します。
✕ 背景実行:「背景実行」は&の説明で、出力を次コマンドへ渡す機能ではありません。
✕ 末尾に追記:「末尾に追記」は>>の説明で、コマンド間のデータ受け渡しではありません。
第8問 ・ LPIC-1 / GNU・Unixコマンド
新規作成時の既定パーミッションを決める仕組みは?
- chmod
- umask✓ 正解
- sticky
- setuid
💡 umaskは作成時に落とすビット。022ならファイルは644、ディレクトリは755で作られます。
✕ chmod:chmod は既存ファイルの権限を個別に変更するもので、新規作成時の既定値ではありません。
○ umask:正解。umaskは作成時に落とすビットを定め、新規ファイル/ディレクトリの既定権限を決めます。
✕ sticky:sticky(スティッキービット)はディレクトリの削除制限用で、既定権限の決定とは別です。
✕ setuid:setuid は実行時に所有者権限で動作させる特殊ビットで、既定権限の決定ではありません。
第9問 ・ LPIC-1 / GNU・Unixコマンド
コマンドのマニュアルを表示するコマンドは?
- man✓ 正解
- cat
- echo
- which
💡 man <コマンド> でマニュアル参照。man 5 passwd のようにセクション番号も指定できます。
○ man:正解。man <コマンド> でマニュアルを表示します(セクション番号も指定可)。
✕ cat:cat はファイル内容を連結表示するコマンドで、マニュアル表示用ではありません。
✕ echo:echo は引数の文字列を出力するコマンドで、マニュアルは表示しません。
✕ which:which はコマンドのパスを表示するもので、マニュアル本文は表示しません。
第10問 ・ LPIC-1 / GNU・Unixコマンド
ファイルの末尾を表示し追従もできるコマンドは?
- head
- tail✓ 正解
- cat
- less
💡 tailは末尾(既定10行)を表示。-f でログをリアルタイム追従。headは先頭表示です。
✕ head:head はファイルの先頭(既定10行)を表示するコマンドで、末尾の表示ではありません。
○ tail:正解。tail は末尾を表示し、-f でログのリアルタイム追従もできます。
✕ cat:cat はファイル全体を表示するコマンドで、末尾追従の機能はありません。
✕ less:less はページャで内容を閲覧できますが、-fの追従はtailが定番です。
第11問 ・ LPIC-1 / GNU・Unixコマンド
ストリームで文字列を置換する定番コマンドは?
- sed✓ 正解
- awk
- cut
- tr
💡 sed 's/old/new/g' で置換。awkは列処理、cutは列抽出、trは文字単位の変換に使います。
○ sed:正解。sed 's/old/new/g' でストリーム中の文字列を置換します。
✕ awk:awk は列(フィールド)単位の処理に使うツールで、定番の置換コマンドではありません。
✕ cut:cut は列の切り出し用コマンドで、文字列の置換はしません。
✕ tr:tr は文字単位の変換/削除を行うもので、パターン置換はsedが定番です。
第12問 ・ LPIC-1 / GNU・Unixコマンド
優先度を指定してプロセスを起動するコマンドは?
- nice✓ 正解
- renice
- kill
- top
💡 niceは指定優先度で起動、reniceは実行中の変更。値(nice値)が小さいほど優先度は高いです。
○ nice:正解。nice は指定した優先度(nice値)でプロセスを起動します。
✕ renice:renice は既に実行中のプロセスの優先度を変更するもので、起動はしません。
✕ kill:kill はプロセスへシグナルを送るコマンドで、優先度指定の起動ではありません。
✕ top:top はプロセス監視用で、優先度を指定して起動する機能はありません。
第13問 ・ LPIC-1 / GNU・Unixコマンド
ファイルをgzip圧縮アーカイブにまとめるコマンドは?
- tar -czf✓ 正解
- tar -xzf
- tar -tf
- gzip -d
💡 tar -czf out.tar.gz dir で作成(c=作成,z=gzip,f=ファイル)。展開は tar -xzf です。
○ tar -czf:正解。tar -czf out.tar.gz dir で作成します(c=作成,z=gzip,f=ファイル)。
✕ tar -xzf:tar -xzf は既存アーカイブの展開(x=展開)で、作成ではありません。
✕ tar -tf:tar -tf はアーカイブ内容の一覧表示で、圧縮アーカイブの作成ではありません。
✕ gzip -d:gzip -d は単一ファイルの解凍で、複数ファイルをまとめる作成ではありません。
第14問 ・ LPIC-1 / GNU・Unixコマンド
テキストを行単位で並べ替えるコマンドは?
- uniq
- sort✓ 正解
- paste
- join
💡 sortは行を昇順に並べ替え(-rで降順,-nで数値)。重複行の集約は並べ替え後にuniqと併用します。
✕ uniq:uniq は隣接する重複行の集約用で、並べ替え自体は行いません。
○ sort:正解。sort は行を昇順に並べ替えます(-rで降順,-nで数値順)。
✕ paste:paste は複数ファイルを列方向に連結するもので、行の並べ替えではありません。
✕ join:join は共通フィールドで2ファイルを結合するもので、並べ替えではありません。
第15問 ・ LPIC-1 / GNU・Unixコマンド
ファイルの行数を数えるコマンドは?
- wc -l✓ 正解
- wc -c
- nl
- cat -n
💡 wc -l は行数を表示します。-c はバイト数、-w は単語数。nlやcat -nは行番号の付与です。
○ wc -l:正解。wc -l はファイルの行数を表示します。
✕ wc -c:wc -c はバイト数を数えるオプションで、行数ではありません。
✕ nl:nl は各行に行番号を付けて表示するもので、行数を数える用途ではありません。
✕ cat -n:cat -n も行番号付与の表示で、行数のカウント専用ではありません。
第16問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
/etc/passwd から、コロン区切りの1番目のフィールド(ユーザー名)だけを抜き出して表示するコマンドはどれですか。
- cut -d: -f1 /etc/passwd✓ 正解
- cut -c1 /etc/passwd
- cut -f: -d1 /etc/passwd
- cut -s1 /etc/passwd
💡 cut の -d で区切り文字(ここでは「:」)、-f で取り出すフィールド番号を指定します。-c はバイト/文字位置の切り出しです。
○ cut -d: -f1 /etc/passwd:正解。cut -d: -f1 は区切り文字を「:」とし1番目のフィールドを抽出します。
✕ cut -c1 /etc/passwd:cut -c1 は各行の1文字目(文字位置)を切り出すもので、フィールド指定ではありません。
✕ cut -f: -d1 /etc/passwd:-f と -d の意味が逆で、-f:(フィールド指定が「:」)は不正な指定です。
✕ cut -s1 /etc/passwd:-s1 という指定は無効で、-s は区切りを含まない行を抑制するオプションです。
第17問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ソート済みファイル access.log の各行について、連続する重複行をまとめ、その出現回数を各行の先頭に付けて表示するコマンドはどれですか。
- uniq -c access.log✓ 正解
- uniq -d access.log
- uniq -u access.log
- sort -c access.log
💡 uniq -c は連続する重複行を1行にまとめ、その回数を先頭に付加します。uniq は隣接する重複のみを対象とするため、通常は事前に sort します。-d は重複行のみ、-u は重複のない行のみを表示します。
○ uniq -c access.log:正解。uniq -c は連続する重複行をまとめ、出現回数を各行先頭に付けて表示します。
✕ uniq -d access.log:uniq -d は重複している行のみを表示し、回数の付加は行いません。
✕ uniq -u access.log:uniq -u は重複のない行のみを表示するもので、回数表示ではありません。
✕ sort -c access.log:sort -c は入力がソート済みか検査するだけで、重複集約や回数表示はしません。
第18問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル nums.txt の各行を、2番目のフィールドの数値の大きい順(降順)に並べ替えて表示するコマンドはどれですか。フィールド区切りは空白とします。
- sort -t' ' -k2 -nr nums.txt✓ 正解
- sort -k2 -a nums.txt
- sort -f2 -nr nums.txt
- sort -n -k2 -i nums.txt
💡 -k2 で2番目のフィールドをソートキーに指定、-n で数値として比較、-r で降順にします。-t は区切り文字の指定です。
○ sort -t' ' -k2 -nr nums.txt:正解。-k2 でキー指定、-n で数値比較、-r で降順、-t で区切り文字を指定します。
✕ sort -k2 -a nums.txt:-a は sort に存在しないオプションで、降順や数値比較も指定されていません。
✕ sort -f2 -nr nums.txt:-f は大文字小文字無視のオプションで、フィールド指定(-k)ではありません。
✕ sort -n -k2 -i nums.txt:-i は印字不能文字の無視で、フィールド指定や降順の指定にはなりません。
第19問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
標準入力のテキストに含まれる小文字のアルファベットを、すべて対応する大文字に変換して出力するコマンドはどれですか。
- tr 'a-z' 'A-Z'✓ 正解
- tr -d 'a-z'
- tr -s 'a-z' 'A-Z'
- sed 'a-z/A-Z'
💡 tr は1文字目の集合を2文字目の集合へ置換します。tr 'a-z' 'A-Z' で小文字を大文字に変換できます(tr '[:lower:]' '[:upper:]' でも同様)。-d は削除、-s は連続文字の圧縮です。
○ tr 'a-z' 'A-Z':正解。tr 'a-z' 'A-Z' は1集合目の文字を2集合目へ置換し小文字を大文字にします。
✕ tr -d 'a-z':tr -d 'a-z' は小文字を削除するだけで、大文字への変換ではありません。
✕ tr -s 'a-z' 'A-Z':tr -s 'a-z' 'A-Z' は連続文字を圧縮しつつ変換するもので、意図と異なります。
✕ sed 'a-z/A-Z':sed 'a-z/A-Z' は構文が不正で、sed の置換は s/old/new/ 形式です。
第20問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ソート済みファイル names.txt から重複行を取り除き、各重複グループを1行だけにして表示するコマンドはどれですか。
- uniq names.txt✓ 正解
- uniq -d names.txt
- uniq -u names.txt
- uniq -c names.txt
💡 オプションなしの uniq は連続する重複行を1行にまとめて表示します。隣接行しか比較しないため、通常は事前に sort します。
○ uniq names.txt:正解。オプションなしの uniq は連続する重複行を1行にまとめて出力します。
✕ uniq -d names.txt:uniq -d は重複している行だけを表示し、重複のない行は出力しないため挙動が異なります。
✕ uniq -u names.txt:uniq -u は重複が一切ない行だけを表示するもので、各グループを1行残す動作ではありません。
✕ uniq -c names.txt:uniq -c は各行の出現回数を先頭に付加するもので、回数表示が不要な本問には合いません。
第21問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル list.txt を並べ替えると同時に重複行を取り除いて表示する、sort 単体のコマンドはどれですか。
- sort -u list.txt✓ 正解
- sort -r list.txt
- sort -c list.txt
- sort -m list.txt
💡 sort -u はソートした上で重複行を1つにまとめます(sort | uniq と同等)。-r は降順、-c はソート済みかの検査、-m はソート済みファイルのマージです。
○ sort -u list.txt:正解。sort -u はソートと同時に重複行を除去します(sort | uniq 相当)。
✕ sort -r list.txt:sort -r は降順に並べ替えるだけで、重複行の除去は行いません。
✕ sort -c list.txt:sort -c は入力がソート済みかを検査するだけで、並べ替えや重複除去はしません。
✕ sort -m list.txt:sort -m はソート済みの複数ファイルをマージするオプションで、重複除去が主目的ではありません。
第22問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
標準入力のテキストから、改行を除くすべての数字(0-9)を削除して出力するコマンドはどれですか。
- tr -d '0-9'✓ 正解
- tr -s '0-9'
- tr '0-9' ' '
- tr -c '0-9'
💡 tr -d は指定した文字集合を削除します。tr -d '0-9' で数字をすべて取り除けます。-s は連続文字の圧縮です。
○ tr -d '0-9':正解。tr -d '0-9' は指定集合(数字)に一致する文字をすべて削除します。
✕ tr -s '0-9':tr -s '0-9' は連続する数字を1文字に圧縮するだけで、数字を削除しません。
✕ tr '0-9' ' ':tr '0-9' ' ' は数字を空白に置換するもので、削除ではなく別の文字に変換します。
✕ tr -c '0-9':tr -c '0-9' は補集合の指定で単独では削除にならず、-d と組み合わせて初めて削除になります。
第23問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
連続する空白を1つのスペースにまとめて(圧縮して)出力するコマンドはどれですか。
- tr -s ' '✓ 正解
- tr -d ' '
- tr ' ' '\n'
- tr -c ' '
💡 tr -s は指定した文字の連続を1つに圧縮(squeeze)します。tr -s ' ' で連続する空白を単一のスペースにまとめます。
○ tr -s ' ':正解。tr -s ' ' は連続する空白を1つのスペースに圧縮します。
✕ tr -d ' ':tr -d ' ' は空白をすべて削除するもので、1つにまとめる動作ではありません。
✕ tr ' ' '\n':tr ' ' '\n' は空白を改行に置換するもので、空白の圧縮ではありません。
✕ tr -c ' ':tr -c ' ' は空白以外を対象とする補集合指定で、空白の圧縮にはなりません。
第24問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル data.txt から文字列 foo を含む行をすべて削除して出力する sed のコマンドはどれですか。
- sed '/foo/d' data.txt✓ 正解
- sed 's/foo/d/' data.txt
- sed '/foo/p' data.txt
- sed -n '/foo/' data.txt
💡 sed の d コマンドは行を削除します。/foo/d はパターン foo にマッチする行を削除して残りを出力します。
○ sed '/foo/d' data.txt:正解。sed '/foo/d' は foo にマッチする行を削除し、残りの行を出力します。
✕ sed 's/foo/d/' data.txt:sed 's/foo/d/' は文字列 foo を d に置換するだけで、行の削除にはなりません。
✕ sed '/foo/p' data.txt:sed '/foo/p' は該当行を重複出力するもので、削除ではありません。
✕ sed -n '/foo/' data.txt:sed -n '/foo/' はアクション(p等)が無く構文として不完全で、削除にはなりません。
第25問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル file.txt の3行目だけを出力する sed のコマンドはどれですか。
- sed -n '3p' file.txt✓ 正解
- sed '3p' file.txt
- sed -n '3d' file.txt
- sed '3q' file.txt
💡 sed -n で自動出力を抑制し、3p で3行目だけを明示的に出力します。-n を付けないと全行が出力されて3行目が二重になります。
○ sed -n '3p' file.txt:正解。sed -n '3p' は自動出力を抑制し、3行目だけを明示出力します。
✕ sed '3p' file.txt:sed '3p' は -n が無いため全行を出力し、3行目だけが二重表示になります。
✕ sed -n '3d' file.txt:sed -n '3d' は -n で出力抑制した上に削除指定のため、何も出力されません。
✕ sed '3q' file.txt:sed '3q' は3行目を出力した後に処理を終了するもので、1〜3行目が出力されます。
第26問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル file.txt の先頭5行だけを表示するコマンドはどれですか。
- head -n 5 file.txt✓ 正解
- head -c 5 file.txt
- tail -n 5 file.txt
- head -5l file.txt
💡 head -n 5 は先頭5行を表示します。-c はバイト数指定、tail は末尾側の表示です。
○ head -n 5 file.txt:正解。head -n 5 はファイルの先頭5行を表示します。
✕ head -c 5 file.txt:head -c 5 は先頭5バイトを表示する指定で、行単位ではありません。
✕ tail -n 5 file.txt:tail -n 5 は末尾5行を表示するもので、先頭の表示ではありません。
✕ head -5l file.txt:head -5l という指定は不正で、行数指定は -n もしくは -5 を用います。
第27問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
2つのファイル a.txt と b.txt を、同じ行番号どうしをタブ区切りで横に連結して出力するコマンドはどれですか。
- paste a.txt b.txt✓ 正解
- join a.txt b.txt
- cat a.txt b.txt
- merge a.txt b.txt
💡 paste は複数ファイルを行ごとに列方向(横)へ連結し、既定でタブ区切りにします。-d で区切り文字を変更できます。
○ paste a.txt b.txt:正解。paste は各ファイルの同じ行を横(列方向)にタブ区切りで連結します。
✕ join a.txt b.txt:join は共通フィールドをキーに行を結合するもので、単純な行どうしの横連結ではありません。
✕ cat a.txt b.txt:cat a.txt b.txt は2ファイルを縦に連結するもので、横方向の連結ではありません。
✕ merge a.txt b.txt:merge は3-way マージ用のコマンドで、行の横連結を行うものではありません。
第28問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
共通の最初のフィールドをキーとして、ソート済みの2ファイル a.txt と b.txt を結合して表示するコマンドはどれですか。
- join a.txt b.txt✓ 正解
- paste a.txt b.txt
- merge a.txt b.txt
- comm a.txt b.txt
💡 join は両ファイルに共通する結合フィールド(既定で1番目のフィールド)が一致する行どうしを結合します。両ファイルがそのフィールドでソート済みである必要があります。
○ join a.txt b.txt:正解。join は共通フィールドが一致する行どうしを結合します(要ソート済み)。
✕ paste a.txt b.txt:paste は行番号で機械的に横連結するだけで、キー一致による結合は行いません。
✕ merge a.txt b.txt:merge は3-way マージ用で、共通フィールドをキーにした結合ではありません。
✕ comm a.txt b.txt:comm はソート済み2ファイルの共通/固有行を3列で比較表示するもので、フィールド結合ではありません。
第29問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
大きなファイル big.txt を1000行ごとに分割し、複数のファイルに出力するコマンドはどれですか。
- split -l 1000 big.txt✓ 正解
- split -b 1000 big.txt
- cut -l 1000 big.txt
- csplit -n 1000 big.txt
💡 split -l 1000 は入力を1000行ごとに分割し、xaa, xab... のような複数ファイルを生成します。-b はバイト数で分割します。
○ split -l 1000 big.txt:正解。split -l 1000 は1000行ごとにファイルを分割します。
✕ split -b 1000 big.txt:split -b 1000 はバイト数(1000バイト)で分割するもので、行単位ではありません。
✕ cut -l 1000 big.txt:cut -l というオプションは存在せず、cut は列の切り出し用コマンドです。
✕ csplit -n 1000 big.txt:csplit はパターン位置で分割するコマンドで、-n は行数指定ではなく接尾辞桁数の指定です。
第30問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル src.c 中のタブ文字をスペースに変換して出力するコマンドはどれですか。
- expand src.c✓ 正解
- unexpand src.c
- fmt src.c
- nl src.c
💡 expand はタブをスペースに変換します。逆に unexpand は連続するスペースをタブに変換します。
○ expand src.c:正解。expand はタブ文字をスペースに変換して出力します。
✕ unexpand src.c:unexpand は連続するスペースをタブに変換するもので、expand とは逆方向の処理です。
✕ fmt src.c:fmt は段落の行幅を整形するコマンドで、タブとスペースの変換は行いません。
✕ nl src.c:nl は各行に行番号を付けるコマンドで、タブの変換機能はありません。
第31問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
バイナリファイル data.bin の内容を8進数のダンプ形式で表示する、最も標準的なコマンドはどれですか。
- od data.bin✓ 正解
- nl data.bin
- wc data.bin
- tr data.bin
💡 od(octal dump)はファイルの内容を既定で8進数のダンプとして表示します。-c で文字、-x で16進など表示形式を切り替えられます。
○ od data.bin:正解。od はファイル内容を既定で8進ダンプとして表示します(-c や -x で形式変更)。
✕ nl data.bin:nl は行番号を付けて表示するコマンドで、バイナリのダンプ表示はできません。
✕ wc data.bin:wc は行数・単語数・バイト数を数えるコマンドで、内容のダンプ表示はしません。
✕ tr data.bin:tr は文字の変換・削除を行うコマンドで、ダンプ形式での表示機能はありません。
第32問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
存在しない中間ディレクトリも含めて parent/child/grandchild を一度に作成するコマンドはどれですか。
- mkdir -p parent/child/grandchild✓ 正解
- mkdir parent/child/grandchild
- mkdir -r parent/child/grandchild
- mkdir -m parent/child/grandchild
💡 mkdir -p は必要な親ディレクトリも順に作成し、既存でもエラーになりません。-p なしでは中間が無いと失敗します。
○ mkdir -p parent/child/grandchild:正解。mkdir -p は存在しない中間ディレクトリも含めて階層を一度に作成します。
✕ mkdir parent/child/grandchild:-p なしの mkdir は中間の parent や child が存在しないとエラーになり作成できません。
✕ mkdir -r parent/child/grandchild:mkdir に -r というオプションはなく、再帰作成は -p を使います。
✕ mkdir -m parent/child/grandchild:-m はパーミッションを指定するオプションで、引数として階層パスは渡せず中間作成もしません。
第33問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ディレクトリ data を、その中身ごと再帰的に backup へコピーするコマンドはどれですか。
- cp -r data backup✓ 正解
- cp data backup
- cp -p data backup
- cp -l data backup
💡 cp -r(または -R)でディレクトリを中身ごと再帰的にコピーします。-r なしではディレクトリはコピーできずエラーになります。
○ cp -r data backup:正解。cp -r はディレクトリを配下の中身ごと再帰的にコピーします。
✕ cp data backup:-r なしの cp はディレクトリ指定で「omitting directory」となりコピーできません。
✕ cp -p data backup:-p は所有者やタイムスタンプ等の属性を保持するオプションで、単独では再帰コピーになりません。
✕ cp -l data backup:-l はコピーの代わりにハードリンクを作成するオプションで、再帰コピーそのものではありません。
第34問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ディレクトリ olddir を中身ごと、確認なしで強制的に削除するコマンドはどれですか。
- rm -rf olddir✓ 正解
- rm -f olddir
- rmdir olddir
- rm -i olddir
💡 rm -r で再帰削除、-f で確認や警告を抑止します。rmdir は空ディレクトリしか削除できません。
○ rm -rf olddir:正解。rm -rf は -r で再帰削除し -f で確認なしに強制削除します。
✕ rm -f olddir:rm -f は -r が無いためディレクトリを削除できず、ファイル向けの強制削除です。
✕ rmdir olddir:rmdir は空のディレクトリしか削除できず、中身があると失敗します。
✕ rm -i olddir:rm -i は削除前に1件ずつ確認を求めるオプションで、強制削除とは逆の動作です。
第35問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル report.txt を移動先 archive/ へ移し、上書きの前に必ず確認を求めるコマンドはどれですか。
- mv -i report.txt archive/✓ 正解
- mv -f report.txt archive/
- mv -n report.txt archive/
- mv -u report.txt archive/
💡 mv -i は上書きが発生する場合に確認を求めます。-f は確認せず上書き、-n は既存があれば上書きしません。
○ mv -i report.txt archive/:正解。mv -i は移動先に同名ファイルがある場合、上書き前に確認を求めます。
✕ mv -f report.txt archive/:-f は確認を一切行わず強制的に上書きするオプションで、確認は求めません。
✕ mv -n report.txt archive/:-n(no-clobber)は既存ファイルがあれば上書きせずスキップし、確認も求めません。
✕ mv -u report.txt archive/:-u は移動元が新しい場合のみ上書きする更新オプションで、必ず確認するものではありません。
第36問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
既存ファイル notes.txt の内容を変えずに、最終更新時刻だけを現在時刻に更新するコマンドはどれですか。
- touch notes.txt✓ 正解
- cat notes.txt
- echo notes.txt
- stat notes.txt
💡 touch は既存ファイルのタイムスタンプを現在時刻に更新し、存在しなければ空ファイルを作成します。内容は変更しません。
○ touch notes.txt:正解。touch は既存ファイルのタイムスタンプを更新し(無ければ空ファイル作成)、内容は変えません。
✕ cat notes.txt:cat はファイル内容を表示するだけで、タイムスタンプの更新は目的ではありません。
✕ echo notes.txt:echo は引数の文字列を出力するだけで、ファイルのタイムスタンプは更新しません。
✕ stat notes.txt:stat はファイルのメタ情報を表示するコマンドで、タイムスタンプの変更はしません。
第37問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル mystery の種類(テキストか実行ファイルか等)を、内容を解析して判定するコマンドはどれですか。
- file mystery✓ 正解
- type mystery
- stat mystery
- which mystery
💡 file はマジックナンバー等から中身を解析しファイルの種類を表示します。拡張子ではなく内容で判定する点が特徴です。
○ file mystery:正解。file はファイルの内容を解析し、テキストやバイナリ等の種類を判定して表示します。
✕ type mystery:type はシェルで指定名がコマンド・別名・組込みのどれかを示すもので、ファイル種別の判定ではありません。
✕ stat mystery:stat はサイズや所有者等のメタ情報を表示しますが、内容を解析した種類判定はしません。
✕ which mystery:which はPATH上の実行コマンドの場所を示すだけで、ファイルの種類判定はしません。
第38問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
指定したコマンド名が「シェルの組み込みコマンド」か「外部コマンド」かを判別するのに最も適したコマンドはどれですか。
- type cd✓ 正解
- which cd
- whereis cd
- locate cd
💡 type はシェルの組み込みコマンドかエイリアスか外部コマンドかを区別して示します。which は PATH 上の実行ファイルのパスのみを表示し、組み込みは扱えません。
○ type cd:正解。type は対象が組み込み・エイリアス・関数・外部コマンドのいずれかを区別して示します。
✕ which cd:which は PATH 上の実行ファイルのパスを示すだけで、組み込みコマンドの cd は判別できません。
✕ whereis cd:whereis はバイナリ・ソース・manページの場所を探すもので、組み込みかどうかの判別が目的ではありません。
✕ locate cd:locate はファイル名データベースを検索するもので、コマンド種別の判別はしません。
第39問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
事前に作成されたデータベースを検索して、ファイル名に passwd を含むパスを高速に列挙するコマンドはどれですか。
- locate passwd✓ 正解
- find passwd
- updatedb passwd
- whereis -b passwd
💡 locate は updatedb が作成したデータベースを検索するため高速です。最新の状態を反映するには事前に updatedb を実行します。
○ locate passwd:正解。locate は updatedb が構築したデータベースを参照し、該当パスを高速に列挙します。
✕ find passwd:find passwd は起点パス指定が不適切で、ディスクを走査するため高速なDB検索とは異なります。
✕ updatedb passwd:updatedb は locate 用データベースを更新するコマンドで、それ自体は検索結果を列挙しません。
✕ whereis -b passwd:whereis -b はバイナリの場所を探すもので、ファイル名を含むパスの一般的な高速列挙ではありません。
第40問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
カレントディレクトリ以下から、所有者が www かつ最終更新が7日より前の通常ファイルを探すコマンドはどれですか。
- find . -type f -user www -mtime +7✓ 正解
- find . -type d -user www -mtime +7
- find . -type f -group www -mtime -7
- find . -type f -user www -size +7
💡 -type f は通常ファイル、-user www は所有者、-mtime +7 は更新が7日より前を意味します。-mtime -7 は7日以内、-group はグループ条件です。
○ find . -type f -user www -mtime +7:正解。-type f(通常ファイル)・-user www(所有者)・-mtime +7(7日より前)の条件で正しく絞り込めます。
✕ find . -type d -user www -mtime +7:-type d はディレクトリを対象とするため、通常ファイルを探す設問の条件に合いません。
✕ find . -type f -group www -mtime -7:-group は所有グループの条件で所有者ではなく、-mtime -7 は7日以内を意味し設問と逆です。
✕ find . -type f -user www -size +7:-size +7 はサイズ条件であり、最終更新7日より前という時間条件にはなりません。
第41問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
カレントディレクトリ以下の *.tmp ファイルを検索し、見つかった各ファイルを削除するコマンドはどれですか。
- find . -name "*.tmp" -exec rm {} \;✓ 正解
- find . -name "*.tmp" -rm
- find . -name "*.tmp" | rm
- find . -name "*.tmp" -delete {} \;
💡 -exec はマッチした各ファイルに対しコマンドを実行し、{} がファイル名に置換され \; で区切ります。-delete でも削除できますが {} は不要です。
○ find . -name "*.tmp" -exec rm {} \;:正解。-exec rm {} \; は見つかった各ファイル({}に置換)に rm を実行して削除します。
✕ find . -name "*.tmp" -rm:find に -rm というアクションは存在せず、削除はできません。
✕ find . -name "*.tmp" | rm:rm は標準入力からファイル名を受け取らないため、パイプでは削除できません(xargs等が必要)。
✕ find . -name "*.tmp" -delete {} \;:-delete は単独で機能し {} \; は不要で、この記法は構文として不正です。
第42問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ディレクトリ src を bzip2 で圧縮した tar アーカイブ src.tar.bz2 を作成するコマンドはどれですか。
- tar -cjf src.tar.bz2 src✓ 正解
- tar -czf src.tar.bz2 src
- tar -cJf src.tar.bz2 src
- tar -xjf src.tar.bz2 src
💡 c=作成、j=bzip2、f=ファイル指定です。z は gzip、J は xz、x は展開を表します。圧縮方式とオプションの対応が要点です。
○ tar -cjf src.tar.bz2 src:正解。-cjf は c(作成)・j(bzip2圧縮)・f(ファイル指定)で .tar.bz2 を作成します。
✕ tar -czf src.tar.bz2 src:-czf の z は gzip 圧縮で、bzip2(.bz2)の作成にはなりません。
✕ tar -cJf src.tar.bz2 src:-cJf の J は xz 圧縮で、bzip2 ではなく .tar.xz 向けです。
✕ tar -xjf src.tar.bz2 src:-xjf の x は展開(解凍)を意味し、アーカイブの作成ではありません。
第43問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
gzip 圧縮された access.log.gz を、元の圧縮ファイルを残したまま内容を画面に表示するコマンドはどれですか。
- zcat access.log.gz✓ 正解
- gunzip access.log.gz
- gzip -d access.log.gz
- cat access.log.gz
💡 zcat は .gz を伸長しながら標準出力へ表示し、元の圧縮ファイルはそのまま残します。gunzip や gzip -d は伸長後に .gz を削除します。
○ zcat access.log.gz:正解。zcat は圧縮ファイルを伸長して内容を表示し、元の .gz を削除せず残します。
✕ gunzip access.log.gz:gunzip は伸長して通常ファイルに戻し、元の .gz ファイルを削除してしまいます。
✕ gzip -d access.log.gz:gzip -d は gunzip と同等の伸長で、元の .gz を削除するため残りません。
✕ cat access.log.gz:cat は圧縮データをそのまま出力するだけで、内容は文字化けし正しく表示されません。
第44問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ps コマンドで、UNIX(System V)形式のオプションを用いて全ユーザーの全プロセスを表示する指定はどれですか。
- ps aux
- ps -ef✓ 正解
- ps -l
- ps T
💡 ps -ef はUNIX(System V)形式で、-e が全プロセス、-f が完全フォーマット表示です。BSD形式の同等指定は ps aux です。
✕ ps aux:ps aux はBSD形式の指定で、全プロセスは表示できますが設問のUNIX(System V)形式ではありません。
○ ps -ef:正解。ps -ef はUNIX(System V)形式で、-e が全プロセス・-f が完全フォーマット表示を指定します。
✕ ps -l:ps -l は長い形式(long)で詳細列を表示しますが、既定では自分の端末のプロセスに限られ全ユーザーは表示しません。
✕ ps T:ps T は現在の端末に紐づくプロセスのみを表示するBSD形式の指定で、全ユーザーの全プロセスではありません。
第45問 ・ LPIC-1 / GNU・Unixコマンド
プロセス名(コマンド名)を指定して、該当する全プロセスにシグナルを送って終了させるコマンドはどれですか。
- killall✓ 正解
- pgrep
- nice
- jobs
💡 killall はプロセス名を指定し、一致する全プロセスにシグナル(既定はSIGTERM)を送ります。kill はPIDを指定する点が異なります。
○ killall:正解。killall はプロセス名を指定し、一致する全プロセスにシグナル(既定SIGTERM)を送って終了させます。
✕ pgrep:pgrep はプロセス名に一致するPIDを検索・表示するだけで、シグナルは送りません(送るのはpkill)。
✕ nice:nice はプロセスを指定優先度で起動するコマンドで、シグナル送信や終了はしません。
✕ jobs:jobs はシェルのジョブ一覧を表示するだけで、プロセスへのシグナル送信は行いません。
第46問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
プロセス名のパターンに一致するプロセスのPIDだけを検索して表示するコマンドはどれですか。
- pkill
- pgrep✓ 正解
- pidof -x
- killall -l
💡 pgrep はプロセス名のパターンに一致するPIDを表示します。pkill は同様の検索を行いますがシグナルを送って終了させる点が異なります。
✕ pkill:pkill はパターン一致したプロセスにシグナルを送って終了させるコマンドで、PID表示が主目的ではありません。
○ pgrep:正解。pgrep はプロセス名のパターンに一致するプロセスのPIDを検索して表示します。
✕ pidof -x:pidof は完全なプログラム名でPIDを返しますが、pgrepのようなパターン(部分一致)検索が主用途ではありません。
✕ killall -l:killall -l は送信可能なシグナルの一覧を表示するオプションで、PIDの検索表示ではありません。
第47問 ・ LPIC-1 / GNU・Unixコマンド
プロセスに設定ファイルの再読み込みを促す目的で慣例的に使われるシグナルはどれですか。
- SIGKILL(9)
- SIGTERM(15)
- SIGHUP(1)✓ 正解
- SIGSTOP(19)
💡 SIGHUP(1)は端末切断を意味しますが、多くのデーモンでは設定の再読み込みを指示する用途に慣例的に使われます。例: kill -HUP <PID>。
✕ SIGKILL(9):SIGKILL(9)はプロセスを即時かつ強制的に終了させるシグナルで、捕捉できず再読み込みには使えません。
✕ SIGTERM(15):SIGTERM(15)は正常終了を要求する既定のシグナルで、設定再読み込みの慣例的用途ではありません。
○ SIGHUP(1):正解。SIGHUP(1)は多くのデーモンで設定ファイルの再読み込みを指示する用途に慣例的に使われます。
✕ SIGSTOP(19):SIGSTOP(19)はプロセスを一時停止させるシグナルで、捕捉できず再読み込みには使えません。
第48問 ・ LPIC-1 / GNU・Unixコマンド
コマンドの末尾に & を付けて実行したとき、そのコマンドはどのように動作しますか。
- フォアグラウンドで実行され、終了までシェルが待つ
- バックグラウンドで実行され、シェルはすぐ次の入力を受け付ける✓ 正解
- ログアウトしても確実に動作が継続する
- 標準出力がファイルへリダイレクトされる
💡 末尾の & はコマンドをバックグラウンドで実行し、シェルは待たずに次の入力を受け付けます。fg で前面に戻せます。ログアウト後の継続は nohup や disown が必要です。
✕ フォアグラウンドで実行され、終了までシェルが待つ:& を付けない通常実行がフォアグラウンドで、シェルが終了を待ちます。&はその逆の動作です。
○ バックグラウンドで実行され、シェルはすぐ次の入力を受け付ける:正解。末尾の & はコマンドをバックグラウンド実行し、シェルは待たずに次の入力を受け付けます。
✕ ログアウトしても確実に動作が継続する:& だけではログアウト時にSIGHUPで終了し得ます。継続させるには nohup や disown が必要です。
✕ 標準出力がファイルへリダイレクトされる:& はバックグラウンド実行を指示する記号で、標準出力のリダイレクト(>)とは別の機能です。
第49問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ログアウト後もコマンドの実行を継続させ、SIGHUP の影響を受けないようにして起動するコマンドはどれですか。
- nohup command &✓ 正解
- bg command
- fg command
- renice command
💡 nohup はSIGHUPを無視させてコマンドを実行するため、ログアウト後も継続します。背景化のため末尾に & を付けます。
○ nohup command &:正解。nohup command & はSIGHUPを無視させて起動し、ログアウト後も実行を継続させます。
✕ bg command:bg は既に停止中のジョブをバックグラウンドで再開させるコマンドで、新規コマンドの起動指定ではありません。
✕ fg command:fg は停止中・背景のジョブを前面に戻すコマンドで、SIGHUP回避の起動には使えません。
✕ renice command:renice は実行中プロセスの優先度を変更するコマンドで、SIGHUP回避とは無関係です。
第50問 ・ LPIC-1 / GNU・Unixコマンド
実行中プロセスの nice 値(優先度)を、後から変更するコマンドはどれですか。
- nice
- renice✓ 正解
- top -p
- kill -p
💡 renice は既に実行中のプロセスのnice値を変更します。nice は新規起動時に優先度を指定するコマンドです。nice値は小さいほど優先度が高くなります。
✕ nice:nice は新規にプロセスを起動するときに優先度を指定するコマンドで、実行中の変更はできません。
○ renice:正解。renice は既に実行中のプロセスのnice値(優先度)を後から変更します。
✕ top -p:top -p は指定PIDの監視表示で、優先度の変更を行う本来のコマンドはreniceです。
✕ kill -p:kill -p というオプションは標準になく、killはシグナル送信用で優先度変更はできません。
第51問 ・ LPIC-1 / GNU・Unixコマンド
コマンドの標準出力を画面に表示しつつ、同時にファイルへも書き込むコマンドはどれですか。
- tee✓ 正解
- cat
- xargs
- split
💡 tee は標準入力を標準出力(画面)へ流しながら、同時に指定ファイルへも書き込みます。例: command | tee out.log。-a で追記になります。
○ tee:正解。tee は標準入力を画面へ出力しつつ、同時に指定ファイルへも書き込みます(-aで追記)。
✕ cat:cat はファイル内容の連結表示で、出力を分岐して同時にファイル保存する機能はありません。
✕ xargs:xargs は標準入力を引数に変換してコマンドへ渡すもので、出力の分岐保存はしません。
✕ split:split はファイルを一定サイズ・行数で分割するコマンドで、出力の同時表示・保存ではありません。
第52問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
find の出力(ファイル名のリスト)を受け取り、それらを引数として rm に渡して削除する組み合わせはどれですか。
- find . -name "*.tmp" | xargs rm✓ 正解
- find . -name "*.tmp" | tee rm
- find . -name "*.tmp" > rm
- find . -name "*.tmp" & rm
💡 xargs は標準入力で受け取った文字列をコマンドの引数に変換して実行します。findの結果をrmの引数として渡せます。
○ find . -name "*.tmp" | xargs rm:正解。xargs は標準入力で受け取ったファイル名をrmの引数に変換して削除を実行します。
✕ find . -name "*.tmp" | tee rm:tee は出力を分岐して保存・表示するコマンドで、入力を引数化してrmに渡すことはできません。
✕ find . -name "*.tmp" > rm:> rm は出力を rm という名前のファイルへ書き込むだけで、rmコマンドは実行されません。
✕ find . -name "*.tmp" & rm:& はバックグラウンド実行を指示する記号で、findの出力をrmの引数に渡す機能はありません。
第53問 ・ LPIC-1 / GNU・Unixコマンド
拡張正規表現で「直前の文字の1回以上の繰り返し」を表すメタ文字はどれですか。
- *
- ?
- +✓ 正解
- ^
💡 拡張正規表現(grep -E)で + は直前の文字の1回以上の繰り返しを表します。* は0回以上、? は0回または1回、^ は行頭です。
✕ *:* は直前の文字の0回以上の繰り返しを表し、0回も一致するため「1回以上」とは異なります。
✕ ?:? は直前の文字が0回または1回(省略可能)を表すメタ文字で、繰り返しの指定ではありません。
○ +:正解。拡張正規表現で + は直前の文字の1回以上の繰り返しを表します(grep -E や grep の \+)。
✕ ^:^ は行頭にマッチするアンカーで、文字の繰り返し回数を表すものではありません。
第54問 ・ LPIC-1 / GNU・Unixコマンド
viのコマンドモードで、カーソルのある行を1行まるごと削除する操作はどれですか。
- dd✓ 正解
- x
- yy
- i
💡 vi のコマンドモードで dd はカーソル行を1行削除します。x は1文字削除、yy は行のコピー(ヤンク)、i は挿入モードへの移行です。
○ dd:正解。vi のコマンドモードで dd はカーソルのある行を1行まるごと削除します。
✕ x:x はカーソル位置の1文字を削除する操作で、行全体の削除ではありません。
✕ yy:yy はカーソル行をコピー(ヤンク)する操作で、削除はしません。
✕ i:i は挿入(インサート)モードへ移行する操作で、行の削除は行いません。
第55問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
現在いるディレクトリの絶対パスを表示するコマンドはどれですか。
- pwd✓ 正解
- cwd
- dir
- path
💡 pwd(print working directory)でカレントディレクトリの絶対パスを表示します。
○ pwd:pwd(print working directory)はカレントディレクトリの絶対パスを表示する正しいコマンドです。
✕ cwd:cwd という名前のコマンドは標準では存在しません。
✕ dir:dir は ls 相当でディレクトリ内容を一覧表示し、絶対パスは表示しません。
✕ path:path というコマンドは標準では存在しません。
第56問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル file.txt の内容を、空行も含め全行に行番号を付けて表示するコマンドはどれですか。
- cat -n file.txt✓ 正解
- cat -b file.txt
- cat -v file.txt
- cat -l file.txt
💡 cat -n は全行に行番号を付けます。-b は空行を除いて番号付け、-v は非表示文字の可視化です。
○ cat -n file.txt:cat -n は空行を含む全行に行番号を付けて表示する正しいオプションです。
✕ cat -b file.txt:cat -b は空行を除いた行だけに番号を付けるため、全行への番号付けにはなりません。
✕ cat -v file.txt:cat -v は制御文字など非表示文字を可視化するオプションで、行番号は付きません。
✕ cat -l file.txt:cat -l はファイルをロックするBSD系オプションで、行番号付けの機能はありません。
第57問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
実行中の全プロセスを BSD オプション形式で詳細表示するコマンドはどれですか。
- ps aux✓ 正解
- ps -ef
- ps -aux
- ps all
💡 ps aux はBSD形式で全ユーザーの全プロセスを表示します。ps -ef はUNIX(System V)形式で同等の情報を表示します。
○ ps aux:ps aux はBSD形式で全ユーザーの全プロセスを詳細表示する正しい指定です。
✕ ps -ef:ps -ef はUNIX(System V)形式の指定で、同等の情報を出すが設問のBSD形式ではありません。
✕ ps -aux:ps -aux はハイフン付きで誤った混在指定となり、警告が出るか意図どおり動きません。
✕ ps all:ps all は不正なオプション指定で、正しく全プロセスを表示できません。
第58問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル log の末尾20行を表示するコマンドはどれですか。
- tail -n 20 log✓ 正解
- head -n 20 log
- tail -c 20 log
- tail -f 20 log
💡 tail -n 20 で末尾20行を表示します。-c はバイト数指定、-f は追記の追従、head は先頭側です。
○ tail -n 20 log:tail -n 20 はファイル末尾の20行を表示する正しい指定です。
✕ head -n 20 log:head -n 20 は末尾ではなく先頭の20行を表示します。
✕ tail -c 20 log:tail -c 20 は末尾20バイトを表示する指定で、行単位ではありません。
✕ tail -f 20 log:tail -f は追記を追従表示するオプションで、20を行数指定として扱えません。
第59問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ファイル file 内から、大文字小文字を区別せずに文字列 error を含む行を抽出するコマンドはどれですか。
- grep -i error file✓ 正解
- grep -v error file
- grep -n error file
- grep -c error file
💡 -i は大文字小文字を無視。-v は一致しない行、-n は行番号付き、-c は一致行数のカウントです。
○ grep -i error file:grep -i は大文字小文字を区別せずに一致行を抽出する正しいオプションです。
✕ grep -v error file:grep -v は指定文字列に一致しない行を抽出する逆抽出のオプションです。
✕ grep -n error file:grep -n は一致行に行番号を付けますが、大文字小文字は区別したままです。
✕ grep -c error file:grep -c は一致した行数をカウントするだけで、行そのものは表示しません。
第60問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
カレントディレクトリ以下から、名前が *.conf のファイルを検索するコマンドはどれですか。
- find . -name "*.conf"✓ 正解
- find . -type "*.conf"
- find . -file "*.conf"
- grep -r "*.conf" .
💡 find <起点> -name <パターン> で名前検索します。-type はf/d等のファイル種別を指定するオプションです。
○ find . -name "*.conf":find . -name "*.conf" は名前のパターンでファイルを検索する正しい指定です。
✕ find . -type "*.conf":find の -type はf/d等のファイル種別を指定するオプションで、名前パターンは渡せません。
✕ find . -file "*.conf":find に -file というオプションは存在せず、エラーになります。
✕ grep -r "*.conf" .:grep -r は内容を検索するコマンドで、ファイル名で検索するものではありません。
第61問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
target を指す、名前 link のシンボリックリンクを作成するコマンドはどれですか。
- ln -s target link✓ 正解
- ln -s link target
- ln target link
- link -s target link
💡 ln -s <リンク先> <リンク名> の順です。-s を付けないとハードリンクになります。
○ ln -s target link:ln -s target link はtargetを指すシンボリックリンクlinkを作る正しい指定です。
✕ ln -s link target:引数の順序が逆で、targetという名のリンクがlinkを指す形になり意図と異なります。
✕ ln target link:-s を付けないとシンボリックリンクではなくハードリンクが作成されます。
✕ link -s target link:link というコマンドに -s オプションはなく、シンボリックリンクは作れません。
第62問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
ディレクトリ /var/log の合計使用量だけを、人間が読みやすい単位で表示するコマンドはどれですか。
- du -sh /var/log✓ 正解
- du -ah /var/log
- df -sh /var/log
- ls -sh /var/log
💡 du の -s で合計のみ、-h で読みやすい単位にします。-a は個々のファイルも表示してしまいます。
○ du -sh /var/log:du -sh は指定ディレクトリの合計使用量を読みやすい単位で表示する正しい指定です。
✕ du -ah /var/log:du -ah は配下の個々のファイルまで表示し、合計のみにはなりません。
✕ df -sh /var/log:df は -s を持たず、ファイルシステム単位の表示でディレクトリ合計には使えません。
✕ ls -sh /var/log:ls -sh は各ファイルのブロックサイズを表示するだけで、配下の合計使用量は出ません。
第63問 ・ LPIC-1 / GNU・Unixコマンド ・ コマンド問題
$
gzip圧縮されたアーカイブ archive.tar.gz を展開するコマンドはどれですか。
- tar -xzf archive.tar.gz✓ 正解
- tar -czf archive.tar.gz
- tar -tzf archive.tar.gz
- gzip archive.tar.gz
💡 x=展開、z=gzip、f=ファイル指定。c は作成、t は内容一覧です。gzip 単体ではtarアーカイブは展開できません。
○ tar -xzf archive.tar.gz:tar -xzf はx=展開・z=gzip・f=ファイル指定でgzip圧縮tarを展開する正しい指定です。
✕ tar -czf archive.tar.gz:tar -czf は新規にgzip圧縮アーカイブを作成する指定で、展開ではありません。
✕ tar -tzf archive.tar.gz:tar -tzf はアーカイブの内容一覧を表示するだけで、展開はしません。
✕ gzip archive.tar.gz:gzip 単体ではtar構造を展開できず、.gzの圧縮/伸長しか行いません。
▶ この分野をクイズ形式で解く