Linuxのファイル操作
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*Linuxのファイル操作 [#x21bb6a9]
-[[Linuxコマンド]]
*ファイルとディレクトリの表示 [#h1db7b15]
**ls [#pa642746]
-ls -l <file-name> ※詳細情報を表示
ls -lk ※ファイルサイズ:KB単位
ls -lh ※ファイルサイズ:見やすい単位
ls -lt ※日付順(昇順)
ls -ltr ※日付順(降順)
ls -lS ※ファイルサイズ(降順)
ls -lSr ※ファイルサイズ(昇順)
ls -lR ※再帰的に配下のディレクトリも表示
ls -la ※「.」で始まるファイルも含めて表示
ls -lA ※「.」で始まるファイルも含めて表示(カレントディ...
ls -lF ※ファイルの種類を末尾に表示(ディレクトリ:/、実行...
ls -li ※iノード番号を表示
ls -lu ※最終参照日時を表示
ls -l --full-time ※日付を秒以下の単位も含めて表示
-ls -d ※ディレクトリの情報を表示
ls -ld ※カレントディレクトリの情報を表示
ls -ld <directory-name> ※指定したディレクトリの情報を表示
**stat [#a010de80]
-stat <file-name> ※詳細情報を表示
**file [#ga2b22ea]
-file <file-name> ※ファイルの種別を表示([[マジックナン...
**tree [#fca1802d]
-tree ※ディレクトリをツリー構造で表示
**dirname [#d0d9ca60]
-dirname <path> ※パスからディレクトリ部分を取得
**basename [#d0d9ca60]
-basename <path> ※パスからファイル名部分を取得
*ファイルとディレクトリの検索 [#be7b7426]
**find [#x6d2c105]
-find <target-dir> <search-formula>
--検索式:ファイル名、ディレクトリ名
find <target-dir> -name "<keyword>" ※キーワードにワイル...
find <target-dir> -iname "<keyword>" ※大文字/小文字を区...
find <target-dir> -regex "<keyword>" ※正規表現を使う
--検索式:ファイルの種類
find <target-dir> -type f ※ファイル
find <target-dir> -type d ※ディレクトリ
find <target-dir> -type l ※シンボリックリンク
--検索式:最終更新日
find <target-dir> -mtime -1 ※過去1日以内
find <target-dir> -mtime -10 ※10日前の翌月以降
find <target-dir> -mtime +10 ※10日前の前日以前
find <target-dir> -mtime 10 ※10日前の24時間
find <target-dir> -daystart -mtime +10 ※10日前の前日以...
--検索式:最終アクセス日
find <target-dir> -atime -10 ※過去10日以内アクセスあり
find <target-dir> -atime +10 ※10日超アクセスなし
find <target-dir> -atime 10 ※10日前の24時間
--検索式:アクセス権
find <target-dir> -perm <mode>
--検索式:サイズ
find <target-dir> -size <size> ※ファイルサイズ(ブロック...
--検索式:ユーザー名
find <target-dir> -user <username>
--マッチしたファイルにコマンド実行:
find <target-dir> -exec <command> {}\; ※確認なし
find <target-dir> -ok <command> {}\; ※確認あり
**locate [#l0095509]
-locateデータベースを使ってファイルを検索する
-updatedbコマンドでlocateデータベースを更新してから実行する
--locate "<keyword>"
**updatedb [#e4280e37]
-locateコマンドが検索に使うlocateデータベースを更新する
--updatedb <option>
updatedb
updatedb -e <directory> ※指定したディレクトリを除いて更...
--設定ファイル(/etc/updatedb.conf)
---PRUNEPATHS:指定したディレクトリを除く(登録しない)
---PRUNEFS:指定したファイルシステムを除く(登録しない)
**which [#y8dbd310]
-コマンドの絶対パスを表示する
--which <command>
which <command> ※最初に見つかったファイルのみ表示(実行...
which -a <command> ※全ての見つかったファイルを表示
※環境変数PATHに登録されているディレクトリを左から検索する
**whereis [#kd1cf9e0]
-コマンドのバイナリファイル、ソースコード、マニュアルが置...
--whereis <option> <command>
whereis <command>
whereis -b <command> ※バイナリファイル
whereis -s <command> ※ソースコード
whereis -m <command> ※マニュアル
whereis -a <command> ※最初に検出したものだけでなく、全...
whereis -ab <command> ※全てのバイナリファイル
**type [#n99985b9]
-コマンドがどのようなコマンドかを表示する(エイリアスかど...
--type <option> <command>
type <command>
type -a <command>
*ファイルとディレクトリのコピー [#k2f71651]
**cp [#ee0729ec]
-cp <copy-file> <target-file>
-cp <copy-file> <target-directory>
cp -f ※同名のファイルがあった場合は上書き
cp -i ※同名のファイルがあった場合は上書きするか確認する
cp -p ※コピー元ファイルの属性を保持してコピーする
cp -d ※シンボリックリンクをコピーする
cp -a ※可能な限りコピー元ファイルの状態を保持してコピー...
cp <file> . ※カレントディレクトリにコピー
cp <file> ~ ※ホームディレクトリにコピー
-cp <copy-directory> <target-directory>
cp -r ※ディレクトリ内を再帰的にコピーする
cp -R ※ディレクトリ内を再帰的にコピーする
-cp <copy-file1> <copy-file2> <..> <target-directory> ※...
**dd [#c0743646]
-ブロック単位でファイルをコピー
-デバイスの情報をファイルに出力することができる
--dd if=<input> of=<output>
dd if=/dev/cdrom of=cdrom.iso
*ファイルとディレクトリの移動 [#b45b9580]
**mv [#q388b32b]
-mv <copy-file> <target-file>
-mv <copy-file> <target-directory>
mv -f ※同名のファイルがあった場合は上書き
mv -i ※同名のファイルがあった場合は上書きするか確認する
mv <file-name1> <file-name2> ※同じディレクトリ内での移...
*ファイルとディレクトリの削除 [#j32414da]
**rm [#vcd75e1e]
-rm <file-name>
rm -f ※確認しないで削除
rm -i ※削除するか確認する
-rm <directory-name>
rm -r ※ディレクトリを再起的に削除する
rm -R ※ディレクトリを再起的に削除する
rm -rf ※確認しないで削除
**rmdir [#l06e5681]
-rmdir <directory-name> ※空のディレクトリを削除(中にファ...
*ディレクトリの作成 [#mfca69d1]
**mkdir [#j0f9cff1]
-mkdir <directory-name>
-mkdir -m ※指定したアクセス権で作成
mkdir -m 777
-mkdir -p ※親ディレクトリも作成する
mkdir -p 1st/2nd/3rd
*ファイルのタイムスタンプを変更 [#g8dc3a88]
**touch [#ta3b47bf]
-touch <file-name>
touch <file-name> ※オプションなしの場合は現在時刻に変更
touch -a ※最終参照日時(Access)のみを変更
touch -m ※修正日時(Modify)のみを変更
-touch -t [((CC)YY)MMDDhhmm(.SS)] ※指定した日時に変更
touch -t 202010222222.12
*ファイルのチェックサム [#v562a22c]
-「[[チェックサム]]」参照
*ファイルの参照 [#md5aa07b]
**more [#r3443b7b]
-more <file-name>
--テキストファイルを1画面ずつスクロール表示する
--Spaceキー -1行進む
--Enterキー -次の画面に進む
--q -終了
**less [#m296dfe6]
-less <file-name>
--スクロール
---k、↑ ※上に1行
---j、↓、[Enter] ※下に1行
---f、[Space] ※下に1画面
---b、[Space] ※上に1画面
---q ※終了
--キーワード検索
---/ [文字列] ※下方向に文字列を検索
---? [文字列] ※上方向に文字列を検索
---n ※次を検索
---[Shift] + n ※前を検索
--操作マニュアル
---h ※操作マニュアルを表示
---q ※操作マニュアルを終了
**view [#f069f801]
-view <file-name>
**diff [#a918c54f]
**file [#c7af4edc]
-file ※ファイルの種類を確認
**xxd [#d5c86a1f]
-バイナリファイルを16進数または2進数で表示する(左にアド...
--xxd <file> ※16進数で表示
--xxd -b <file> ※2進数で表示
cat <file> | xxd -b | cut -c11-63|tr -d ' \n'|fold -6|xa...
-バイナリファイルを16進数で表示する(プレーン16進ダンプで...
--xxd -p <file> ※16進数で表示
--xxd -p -c
--xxd -p -c ※1行で表示する文字数を指定(最大256)
echo -n "Base64" | base64 -d | xxd -p -c 256 ※Base64の...
-xxd -r ※16進数をバイナリに変換
--xxd -r <hex-file> <bin-file> ※16進数のダンプファイルか...
--xxd -r -p ※16進数をバイナリに変換(入力がプレーン16進...
echo 48656c6c6f20576f726c64210a | xxd -r -p
echo -n "16進数" | xxd -r -p | base64 ※16進数の文字列を...
echo 0100000101000010 | bc --ibase=2 --obase=16 | xxd -r...
echo "obase=16; ibase=2; 0100000101000010" | bc | xxd -r...
**hexdump [#g847625d]
hexdump -C ※16進数とASCII文字で表示
-2バイト単位で処理 *リトルエンディアンで出力される(最下...
hexdump -o ※8進数で表示(6桁/2バイト)
hexdump -d ※10進数で表示(5桁/2バイト)
hexdump -x ※16進数で表示(4桁/2バイト)(デフォルト)
-1バイト単位で処理
hexdump -b ※8進数で表示(3桁/1バイト)
hexdump -c ※ASCII文字で表示(1文字/1バイト)
*ファイルの変換 [#bf9eae4f]
-「[[Linuxのファイル操作(変換)]]」参照
--nkf
--iconv
*メタキャラクタ [#ie8034fd]
**メタキャラクタの種類 [#a4b1626e]
-ワイルドカード
--* ※0文字以上の文字/文字列
--? ※任意の1文字
--[] ※カッコ内に記述した文字のいずれか1文字にマッチする
[abc]
[a-z]
[0-9]
[!0-9] ※!はマッチしない範囲の指定(not演算子)
[^0-9] ※^はマッチしない範囲の指定(not演算子)
-ブレース展開
--{} ※「,」で区切られた文字列のいずれかにマッチする
[1,2]
[01,02]
-エスケイプ文字
--\ (バックスラッシュ)
--メタキャラクタの直前に記述すると通常の文字として扱うよ...
*関連用語 [#l171f762]
-[[Linuxのファイル編集]]
-[[Linuxのファイル管理]]
-[[Linuxのテキスト処理]]
終了行:
*Linuxのファイル操作 [#x21bb6a9]
-[[Linuxコマンド]]
*ファイルとディレクトリの表示 [#h1db7b15]
**ls [#pa642746]
-ls -l <file-name> ※詳細情報を表示
ls -lk ※ファイルサイズ:KB単位
ls -lh ※ファイルサイズ:見やすい単位
ls -lt ※日付順(昇順)
ls -ltr ※日付順(降順)
ls -lS ※ファイルサイズ(降順)
ls -lSr ※ファイルサイズ(昇順)
ls -lR ※再帰的に配下のディレクトリも表示
ls -la ※「.」で始まるファイルも含めて表示
ls -lA ※「.」で始まるファイルも含めて表示(カレントディ...
ls -lF ※ファイルの種類を末尾に表示(ディレクトリ:/、実行...
ls -li ※iノード番号を表示
ls -lu ※最終参照日時を表示
ls -l --full-time ※日付を秒以下の単位も含めて表示
-ls -d ※ディレクトリの情報を表示
ls -ld ※カレントディレクトリの情報を表示
ls -ld <directory-name> ※指定したディレクトリの情報を表示
**stat [#a010de80]
-stat <file-name> ※詳細情報を表示
**file [#ga2b22ea]
-file <file-name> ※ファイルの種別を表示([[マジックナン...
**tree [#fca1802d]
-tree ※ディレクトリをツリー構造で表示
**dirname [#d0d9ca60]
-dirname <path> ※パスからディレクトリ部分を取得
**basename [#d0d9ca60]
-basename <path> ※パスからファイル名部分を取得
*ファイルとディレクトリの検索 [#be7b7426]
**find [#x6d2c105]
-find <target-dir> <search-formula>
--検索式:ファイル名、ディレクトリ名
find <target-dir> -name "<keyword>" ※キーワードにワイル...
find <target-dir> -iname "<keyword>" ※大文字/小文字を区...
find <target-dir> -regex "<keyword>" ※正規表現を使う
--検索式:ファイルの種類
find <target-dir> -type f ※ファイル
find <target-dir> -type d ※ディレクトリ
find <target-dir> -type l ※シンボリックリンク
--検索式:最終更新日
find <target-dir> -mtime -1 ※過去1日以内
find <target-dir> -mtime -10 ※10日前の翌月以降
find <target-dir> -mtime +10 ※10日前の前日以前
find <target-dir> -mtime 10 ※10日前の24時間
find <target-dir> -daystart -mtime +10 ※10日前の前日以...
--検索式:最終アクセス日
find <target-dir> -atime -10 ※過去10日以内アクセスあり
find <target-dir> -atime +10 ※10日超アクセスなし
find <target-dir> -atime 10 ※10日前の24時間
--検索式:アクセス権
find <target-dir> -perm <mode>
--検索式:サイズ
find <target-dir> -size <size> ※ファイルサイズ(ブロック...
--検索式:ユーザー名
find <target-dir> -user <username>
--マッチしたファイルにコマンド実行:
find <target-dir> -exec <command> {}\; ※確認なし
find <target-dir> -ok <command> {}\; ※確認あり
**locate [#l0095509]
-locateデータベースを使ってファイルを検索する
-updatedbコマンドでlocateデータベースを更新してから実行する
--locate "<keyword>"
**updatedb [#e4280e37]
-locateコマンドが検索に使うlocateデータベースを更新する
--updatedb <option>
updatedb
updatedb -e <directory> ※指定したディレクトリを除いて更...
--設定ファイル(/etc/updatedb.conf)
---PRUNEPATHS:指定したディレクトリを除く(登録しない)
---PRUNEFS:指定したファイルシステムを除く(登録しない)
**which [#y8dbd310]
-コマンドの絶対パスを表示する
--which <command>
which <command> ※最初に見つかったファイルのみ表示(実行...
which -a <command> ※全ての見つかったファイルを表示
※環境変数PATHに登録されているディレクトリを左から検索する
**whereis [#kd1cf9e0]
-コマンドのバイナリファイル、ソースコード、マニュアルが置...
--whereis <option> <command>
whereis <command>
whereis -b <command> ※バイナリファイル
whereis -s <command> ※ソースコード
whereis -m <command> ※マニュアル
whereis -a <command> ※最初に検出したものだけでなく、全...
whereis -ab <command> ※全てのバイナリファイル
**type [#n99985b9]
-コマンドがどのようなコマンドかを表示する(エイリアスかど...
--type <option> <command>
type <command>
type -a <command>
*ファイルとディレクトリのコピー [#k2f71651]
**cp [#ee0729ec]
-cp <copy-file> <target-file>
-cp <copy-file> <target-directory>
cp -f ※同名のファイルがあった場合は上書き
cp -i ※同名のファイルがあった場合は上書きするか確認する
cp -p ※コピー元ファイルの属性を保持してコピーする
cp -d ※シンボリックリンクをコピーする
cp -a ※可能な限りコピー元ファイルの状態を保持してコピー...
cp <file> . ※カレントディレクトリにコピー
cp <file> ~ ※ホームディレクトリにコピー
-cp <copy-directory> <target-directory>
cp -r ※ディレクトリ内を再帰的にコピーする
cp -R ※ディレクトリ内を再帰的にコピーする
-cp <copy-file1> <copy-file2> <..> <target-directory> ※...
**dd [#c0743646]
-ブロック単位でファイルをコピー
-デバイスの情報をファイルに出力することができる
--dd if=<input> of=<output>
dd if=/dev/cdrom of=cdrom.iso
*ファイルとディレクトリの移動 [#b45b9580]
**mv [#q388b32b]
-mv <copy-file> <target-file>
-mv <copy-file> <target-directory>
mv -f ※同名のファイルがあった場合は上書き
mv -i ※同名のファイルがあった場合は上書きするか確認する
mv <file-name1> <file-name2> ※同じディレクトリ内での移...
*ファイルとディレクトリの削除 [#j32414da]
**rm [#vcd75e1e]
-rm <file-name>
rm -f ※確認しないで削除
rm -i ※削除するか確認する
-rm <directory-name>
rm -r ※ディレクトリを再起的に削除する
rm -R ※ディレクトリを再起的に削除する
rm -rf ※確認しないで削除
**rmdir [#l06e5681]
-rmdir <directory-name> ※空のディレクトリを削除(中にファ...
*ディレクトリの作成 [#mfca69d1]
**mkdir [#j0f9cff1]
-mkdir <directory-name>
-mkdir -m ※指定したアクセス権で作成
mkdir -m 777
-mkdir -p ※親ディレクトリも作成する
mkdir -p 1st/2nd/3rd
*ファイルのタイムスタンプを変更 [#g8dc3a88]
**touch [#ta3b47bf]
-touch <file-name>
touch <file-name> ※オプションなしの場合は現在時刻に変更
touch -a ※最終参照日時(Access)のみを変更
touch -m ※修正日時(Modify)のみを変更
-touch -t [((CC)YY)MMDDhhmm(.SS)] ※指定した日時に変更
touch -t 202010222222.12
*ファイルのチェックサム [#v562a22c]
-「[[チェックサム]]」参照
*ファイルの参照 [#md5aa07b]
**more [#r3443b7b]
-more <file-name>
--テキストファイルを1画面ずつスクロール表示する
--Spaceキー -1行進む
--Enterキー -次の画面に進む
--q -終了
**less [#m296dfe6]
-less <file-name>
--スクロール
---k、↑ ※上に1行
---j、↓、[Enter] ※下に1行
---f、[Space] ※下に1画面
---b、[Space] ※上に1画面
---q ※終了
--キーワード検索
---/ [文字列] ※下方向に文字列を検索
---? [文字列] ※上方向に文字列を検索
---n ※次を検索
---[Shift] + n ※前を検索
--操作マニュアル
---h ※操作マニュアルを表示
---q ※操作マニュアルを終了
**view [#f069f801]
-view <file-name>
**diff [#a918c54f]
**file [#c7af4edc]
-file ※ファイルの種類を確認
**xxd [#d5c86a1f]
-バイナリファイルを16進数または2進数で表示する(左にアド...
--xxd <file> ※16進数で表示
--xxd -b <file> ※2進数で表示
cat <file> | xxd -b | cut -c11-63|tr -d ' \n'|fold -6|xa...
-バイナリファイルを16進数で表示する(プレーン16進ダンプで...
--xxd -p <file> ※16進数で表示
--xxd -p -c
--xxd -p -c ※1行で表示する文字数を指定(最大256)
echo -n "Base64" | base64 -d | xxd -p -c 256 ※Base64の...
-xxd -r ※16進数をバイナリに変換
--xxd -r <hex-file> <bin-file> ※16進数のダンプファイルか...
--xxd -r -p ※16進数をバイナリに変換(入力がプレーン16進...
echo 48656c6c6f20576f726c64210a | xxd -r -p
echo -n "16進数" | xxd -r -p | base64 ※16進数の文字列を...
echo 0100000101000010 | bc --ibase=2 --obase=16 | xxd -r...
echo "obase=16; ibase=2; 0100000101000010" | bc | xxd -r...
**hexdump [#g847625d]
hexdump -C ※16進数とASCII文字で表示
-2バイト単位で処理 *リトルエンディアンで出力される(最下...
hexdump -o ※8進数で表示(6桁/2バイト)
hexdump -d ※10進数で表示(5桁/2バイト)
hexdump -x ※16進数で表示(4桁/2バイト)(デフォルト)
-1バイト単位で処理
hexdump -b ※8進数で表示(3桁/1バイト)
hexdump -c ※ASCII文字で表示(1文字/1バイト)
*ファイルの変換 [#bf9eae4f]
-「[[Linuxのファイル操作(変換)]]」参照
--nkf
--iconv
*メタキャラクタ [#ie8034fd]
**メタキャラクタの種類 [#a4b1626e]
-ワイルドカード
--* ※0文字以上の文字/文字列
--? ※任意の1文字
--[] ※カッコ内に記述した文字のいずれか1文字にマッチする
[abc]
[a-z]
[0-9]
[!0-9] ※!はマッチしない範囲の指定(not演算子)
[^0-9] ※^はマッチしない範囲の指定(not演算子)
-ブレース展開
--{} ※「,」で区切られた文字列のいずれかにマッチする
[1,2]
[01,02]
-エスケイプ文字
--\ (バックスラッシュ)
--メタキャラクタの直前に記述すると通常の文字として扱うよ...
*関連用語 [#l171f762]
-[[Linuxのファイル編集]]
-[[Linuxのファイル管理]]
-[[Linuxのテキスト処理]]
ページ名: