4.2. ファイル操作の基本コマンド
4.2.1. 基本的なコマンド
lsコマンド
カレントディレクトリを基準にそこに存在するファイルを表示するコマンド。
ls <オプション>| オプション | 説明 | 
|---|---|
| -A | すべて表示 | 
| -l | 詳細表示 | 
| -d | ディレクトリ自身の表示 | 
| -i | inode番号表示 | 
| -t | 日付順 | 
| -h | ファイルサイズ表示 | 
cpコマンド
ファイルをコピー/上書きするコマンド。
cp <オプション> <移動元> <移動先>| オプション | 説明 | 
|---|---|
| -f | 強制上書き | 
| -i | 対話モードで上書き確認 | 
| -p | アクセス権/所有者などの保護 | 
| -r | 再帰的にコピーする(ディレクトリコピーには必須) | 
mvコマンド
ファイルを移動させるコマンド。
mv <オプション> <移動元> <移動先>mkdirコマンド
ディレクトリを作成するコマンド。
mkdir <ディレクトリ名>| オプション | 説明 | 
|---|---|
| -m | 指定したアクセス権でディレクトリ作成 | 
| -p | 親ディレクトリも作る | 
rmコマンド
ファイルやディレクトリを削除するコマンド。
rm -rf <ファイル名>| オプション | 説明 | 
|---|---|
| -f | 強制的に削除 | 
| -r | 再帰的に削除 | 
| -i | 削除に確認をする | 
rmdirコマンド
空のディレクトリを削除するコマンド。
rmdir <ディレクトリ名>touchコマンド
タイムスタンプの更新やファイルの作成を行うコマンド。
touch <ファイル名>| オプション | 説明 | 
|---|---|
| -a | アクセス時間の更新 | 
| -m | 更新時間のみの更新 | 
| -t | タイムスタンプの指定 | 
fileコマンド
ファイルがテキストかバイナリか文字コードが何か確認するコマンド。
file <ファイル名>typeコマンド
コマンドの実態を調査するコマンド。
type <コマンド>whichコマンド
コマンドのフルパス(どこに存在するか)を教えるコマンド。
which <コマンド>4.2.2. メタキャラクタ(正規表現)
メタキャラクタを用いることで絞り込みなどが行える。
| メタキャラクタ | 説明 | 
|---|---|
| * | 0文字以上の任意の文字列 | 
| ? | 任意の1文字 | 
| [] | 括弧内で列挙された文字のいずれか一文字 | 
| [!] | 括弧内で列挙された文字にマッチしない任意の一文字 | 
| {} | フレーズ展開 | 
4.2.3. ファイル内容の確認/操作を行うコマンド
catコマンド
ファイルの内容を表示するコマンド。
-nオプションで各行ごとに行番号を付加する。
cat <ファイル名>headコマンド
ファイルの先頭n行を表示するコマンド。
head <オプション> <ファイル名>| オプション | 説明 | 
|---|---|
| -n | 先頭から表示する行数の指定 | 
| -行数 | 先頭から表示する行数の指定 | 
| -c バイト数 | 先頭から表示するバイト数の指定 | 
tailコマンド
ファイルの末尾n行を表示するコマンド
tail <オプション> <ファイル名>| オプション | 説明 | 
|---|---|
| -n | 末尾から表示する行数の指定 | 
| -行数 | 末尾から表示する行数の指定 | 
| -c バイト数 | 末尾から表示するバイト数の指定 | 
| -f | ファイルの末尾に追加された行をリアルタイムで表示 | 
cutコマンド
テキストファイルの各行から指定した部分の文字列を取り出して表示するコマンド。
cut <オプション> <ファイル名>| オプション | 説明 | 
|---|---|
| -c 文字数 | 指定したテキストファイルから切り出す文字位置を指定 | 
| -d 区切り文字 | フィールドの区切り文字を指定 | 
| -f フィールド | 取り出すフィールドの指定 | 
nlコマンド
文字列の行だけでなくヘッダ、本文、フッタの部分に分けて行番号を付けるコマンド。
nl -b a data.txt| オプション | 説明 | 
|---|---|
| -b パラメータ | 本文に行番号を付加 | 
| -h パラメータ | ヘッダに行番号を付加 | 
| -f パラメータ | フッタに行番号を付加 | 
| パラメータ | 説明 | 
|---|---|
| a | 全ての行に番号をつける | 
| t | 空白行には番号をつけない | 
| n | 行番号の付加をつけない | 
odコマンド
バイナリファイルの内容をASCII文字、8進数、16進数のいずれかで表示するコマンド。
od -t x data.txt| オプション | 説明 | 
|---|---|
| -j | バイナリファイルの bytes の場所から表示を開始 | 
| -t | 表示タイプの指定(以下のようなタイプを指定可能) | 
| タイプ指定文字 | 説明 | 
|---|---|
| a | 文字の名前 | 
| c | ASCII文字かバックスラッシュつきのエスケープ文字 | 
| d | 符号付きの10進数 | 
| f | 浮動小数点数 | 
| o | 8 進数 | 
| u | 符号なしの10進数 | 
| x | 16 進数 | 
joinコマンド
2つのファイルを読み込み、共通のフィールドを持つ行の連結を行うコマンド。
-j 数字オプションで連結フィールを指定できる。
join -j 1 data1.txt data2.txtpasteコマンド
1つ以上のファイルを読み込み、一致する行を区切り文字を使用して連結するコマンド。
-d 区切り文字オプションで区切り文字の指定が可能。
 paste -d"," date1.txt date2.txttrコマンド
文字列の変換、削除を行うコマンド。
tr <オプション> <文字列1> <文字列2>| オプション | 説明 | 
|---|---|
| -d | 「文字列1」で合致した文字列の削除 | 
| -s | 連続するパターン文字列を1文字として処理 | 
| 文字列の指定方法 | 説明 | 
|---|---|
| [ :alpha:] | 英字 | 
| [ :lower:] | 英小文字 | 
| [ :upper:] | 英大文字 | 
| [ :digit:] | 数字 | 
| [ :alnum:] | 英数字 | 
| [ :space:] | スペース | 
sortコマンド
行単位でファイルの内容をソートするコマンド。
sort <オプション> data.txt| オプション | 説明 | 
|---|---|
| -b | 行頭の空白を無視 | 
| -f | 大文字小文字の区別を無視 | 
| -r | 降順にソート | 
| -n | 数字を文字ではなく数字として処理 | 
uniqコマンド
並び替え済みのデータから重複行を削除して、1行にまとめて表示するコマンド。 重複行を削除するために、ファイルの内容をsortコマンドなどにより並び替えてから実行することが多い。
sort data.txt | uniq| オプション | 説明 | 
|---|---|
| -d | 重複している行のみ出力 | 
| -u | 前後の行と異なる行を表示 | 
splitコマンド
指定サイズでファイルを分割するコマンド。
split -l 10 data.txt| オプション | 説明 | 
|---|---|
| -l 行数 | 指定した行数でのファイル分割。-l を省力することも可能。 | 
| -b バイト | 指定したバイト数でのファイル分割。 | 
prコマンド
印刷前に使用されるファイルの書式を整えるコマンド。
pr -l 30 +1:5 data.txt| オプション | 説明 | 
|---|---|
| +開始ページ [:終了ページ] | 開始ページや終了ページの指定 | 
| -h ヘッダ文字列 | ヘッダに表示されるファイル名を、指定した文字に変更 | 
| -l ページ長 | ヘッダとフッタを含めたページの長さを行数で指定 | 
fmtコマンド
テキストファイルを決められた桁に整形するコマンド。
-w 文字幅オプションで位置行幅を指定可能。
fmt <オプション> <ファイル名>expand/unexpandコマンド
expandコマンドはテキストファイルの中にあるタブをスペースに変換するコマンド。 unexpandコマンドはスペースをタブに変換するコマンド
expand/unexpand <オプション> <ファイル名>| expandのオプション | 説明 | 
|---|---|
| -i | 行頭のタブのみスペースへ変換。 | 
| -t 数値 | 置き換える桁数の指定。タブ幅のデフォルトでは8桁 | 
| unexpandのオプション | 説明 | 
|---|---|
| -a | 行頭以外のスペースも変換。 | 
| -t 数値 | 置き換える桁数の指定。デフォルトでは8桁。 | 
wcコマンド
指定したファイルの行数、単語数、文字数を表示するコマンド。
wc data.txt| オプション | 説明 | 
|---|---|
| -c | 文字数だけの表示 | 
| -l | 行数だけの表示 | 
| -w | 単語数だけの表示 |