linux共通コマンド-4ファイル管理
8582 ワード
以下に、linuxでよく使用されるコマンドの例を示します.
(注:#の後ろにコメントがあり、コマンドを入力するときは書かないでください)
(四)ファイル管理
4.1 cat(ファイルを基本出力に転送)
4.2 chgrp(ファイルまたはディレクトリを変更する所属グループ)
4.3 chmod(ファイルまたはディレクトリの変更権限)
注意:権限番号に関する部分は、下にリストされています:r:権限を読み取り、数値番号は「4」です.w:書き込み権限、数値番号「2」.x:実行権限、数値番号は「1」です.-:権限はありません.番号は「0」です.4.4 chown(ファイルまたはディレクトリの所有者または所属グループを変更)
4.5 cp(ファイルまたはディレクトリのコピー)
4.6 diff(比較ファイルの違い)
4.7 find(ファイルまたはディレクトリの検索)
4.8 ln(ファイルまたはディレクトリリンクの作成)
注意:リンク・ファイルは、ソフト・リンクに分けられます.シンボル・リンクとも呼ばれ、ファイルまたはディレクトリのショートカットを作成します.このリンクは、ソースファイルが削除または移動されると無効になります.ハードリンク:このリンクファイルはソースファイルと同じiノードを指すため、ソースファイルの内容が変化すると、ハードリンクのファイルも同期して更新されます.1つのファイルに複数の名前を付けて、異なるディレクトリに置いて、ユーザーの使用を便利にします.このリンクは、ソースファイルが削除または移動された後も通常のファイルとして有効です.4.9 mv(既存のファイルまたはディレクトリの移動または名前変更)
4.10 rm(ファイルまたはディレクトリの削除)
4.11 touch(ファイルまたはディレクトリ時間を変更し、空のファイルを作成)
付:(時間記録のフォーマットは、以下の"/"のいずれも"-"で代用可能)「16:07 05/22/2005」「04:07 pm 05/22/2005」「04:07 pm 05/22/2005」「16:07 2005/05/22」「04:07 pm 2005/05/22」「04:07 pm 2005/22」「04:07 pm 2005/05/22」4.12 vi(テキストファイル編集)
4.13 more(ファイルの内容をページ別に表示)
4.14 less(ファイルの内容をページング)
4.15 head(ファイルの最初のn行の内容を表示する)
4.16 tail(ファイルの後のn行の内容を表示する)
4.17 grep(ファイル内の条件を満たす文字列を検索)
4.18 sort(テキストファイルの内容を並べ替える)
注意:sortコマンドでは、ソースファイルの内容は変更されず、ソートされた内容のみが出力されます.4.19 scp(ローカルサーバとリモートサーバの間でファイルまたはディレクトリをコピー)
注意:scpコマンドを使用するには、ローカルサーバとリモートサーバがSSHサービスを開始することを前提とします.4.20 stat(ファイル、ディレクトリのinode内容を表示)
4.21 cut(各行に指定された列の内容を表示)
4.22 wc(テキスト統計)
4.23 du(ディレクトリまたはファイルのサイズを表示)
4.24 split(ファイルを切断)
4.25 locate(システム・データベースでファイルまたはディレクトリを検索)
(注:#の後ろにコメントがあり、コマンドを入力するときは書かないでください)
(四)ファイル管理
4.1 cat(ファイルを基本出力に転送)
cat file.txt # file.txt
cat -n file.txt # file.txt , 1
cat -b file.txt # file.txt , 1 ,
cat -s file.txt # ,
cat > file.txt # file.txt
cat >> file.txt # file.txt
cat file1.txt > file2.txt # file1.txt file2.txt
cat file1.txt >> file2.txt # file1.txt file2.txt
cat /dev/null > file.txt # file.txt
cat a.txt b.txt > c.txt # a.txt b.txt c.txt
cat proc.tar.gz* > proc.tar.gz # proc.tar.gz
cat proc.tar.gz* | tar -xzf - #
4.2 chgrp(ファイルまたはディレクトリを変更する所属グループ)
chgrp grp proc # proc grp
chgrp grp proc -R # proc grp
4.3 chmod(ファイルまたはディレクトリの変更権限)
chmod 755 proc -R # proc rwxr-xr-x
chmod +x proc # proc
chmod -x proc # proc
chmod =r proc # r--r--r--
注意:権限番号に関する部分は、下にリストされています:r:権限を読み取り、数値番号は「4」です.w:書き込み権限、数値番号「2」.x:実行権限、数値番号は「1」です.-:権限はありません.番号は「0」です.4.4 chown(ファイルまたはディレクトリの所有者または所属グループを変更)
chown sun proc -R # proc sun
chown sun.grp proc -R # proc sun , grp
chown sun.grp * -R # sun , grp
4.5 cp(ファイルまたはディレクトリのコピー)
cp proc1/file.txt file.txt # proc1 file.txt
cp -r proc1/* proc2 # proc1 proc2 , proc1 proc2
cp file.txt /home/sun/ # file.txt /home/sun/
cp f1.txt f2.txt /home/sun/ # f1.txt f2.txt /home/sun/
cp ../file.txt file.txt # file.txt
cp ../file.txt . #
cp proc1/file.txt new.txt # proc1 file.txt , new.txt
cp -P proc1/file.ln new.ln # , -P ; -P , new.ln ,
cp -rPu proc1/* proc2 # proc1 proc2 , , ; , proc1 proc2
cp --parents setup/readme.txt code/ # setup/readme.txt code , 。 :code/setup/readme.txt
4.6 diff(比較ファイルの違い)
diff file1.txt file2.txt # file1.txt file2.txt
diff -r dir1 dir2 # dir1 dir2
diff -r --brief dir1 dir2 # dir1 dir2 ,
diff -Naur dir1 dir2 > diff.patch # dir1 dir2 , patch。N , ;a , ;u ;r 。
4.7 find(ファイルまたはディレクトリの検索)
find -name 'A.txt' # A.txt
find -iname 'A.txt' # A.txt, :A.txt,A.TXT,a.txt,a.Txt,a.TXT
find -lname 'sh.ln' # sh.ln
find -type d #
find -type l #
find ~/ -name "A*" # A
find -perm 755 -ls # 755
find -empty # 0
find -type f -name "*.bak" -exec rm -rf {} \; # .bak ,
find -type f -name "*.bak" | xargs rm -rf # , “|”
find ! -name '*.java' -type f # .java
find -path './res' -prune -o -name "*.java" -print # , res , .java
find \( -path './res' -o -path './ant' \) -prune -o -name "*.java" -print # , res ant , .java
4.8 ln(ファイルまたはディレクトリリンクの作成)
ln -s abc.txt abc.ln # abc.txt abc.ln
ln -sf abc.txt abc.ln # abc.txt abc.ln, abc.ln ,
ln abc.txt abc.ln # abc.txt abc.ln
注意:リンク・ファイルは、ソフト・リンクに分けられます.シンボル・リンクとも呼ばれ、ファイルまたはディレクトリのショートカットを作成します.このリンクは、ソースファイルが削除または移動されると無効になります.ハードリンク:このリンクファイルはソースファイルと同じiノードを指すため、ソースファイルの内容が変化すると、ハードリンクのファイルも同期して更新されます.1つのファイルに複数の名前を付けて、異なるディレクトリに置いて、ユーザーの使用を便利にします.このリンクは、ソースファイルが削除または移動された後も通常のファイルとして有効です.4.9 mv(既存のファイルまたはディレクトリの移動または名前変更)
mv abc.txt def.txt # abc.txt def.txt
mv abc.txt proc/ # abc.txt proc
mv abc.txt proc/def.txt # abc.txt proc , def.txt
mv old/* proc # old proc , ,old , proc
4.10 rm(ファイルまたはディレクトリの削除)
rm abc.txt # abc.txt
rm -f abc.txt # abc.txt,
rm -rf proc # proc ,
4.11 touch(ファイルまたはディレクトリ時間を変更し、空のファイルを作成)
touch abc.txt # abc.txt
touch sys/abc.txt # sys abc.txt
touch {aa.txt,bb.txt,cc.txt} #
touch a.txt b.txt c.txt #
touch -d "3/21/2011" Shell.txt # Shell.txt 2011 3 21 00:00
touch -d "13:56 3/21/2011" Shell.txt # Shell.txt 2011 3 21 13:56
touch -r a.txt b.txt # b.txt a.txt
付:(時間記録のフォーマットは、以下の"/"のいずれも"-"で代用可能)「16:07 05/22/2005」「04:07 pm 05/22/2005」「04:07 pm 05/22/2005」「16:07 2005/05/22」「04:07 pm 2005/05/22」「04:07 pm 2005/22」「04:07 pm 2005/05/22」4.12 vi(テキストファイル編集)
vi a.txt # vi a.txt
vi a.txt b.txt # a.txt b.txt
4.13 more(ファイルの内容をページ別に表示)
more a.txt # a.txt , , ,
4.14 less(ファイルの内容をページング)
less a.txt # a.txt , j , k
4.15 head(ファイルの最初のn行の内容を表示する)
head a.txt # a.txt 10 ( )
head -5 a.txt # a.txt 5
head -5v a.txt # a.txt, 5
head -5c a.txt # a.txt 5
4.16 tail(ファイルの後のn行の内容を表示する)
tail a.txt # a.txt 10 ( )
tail -5 a.txt # a.txt 5
tail -v a.txt # a.txt, 10
tail -5c a.txt # a.txt 5
4.17 grep(ファイル内の条件を満たす文字列を検索)
grep "select" * # select
grep -l "select" * # select
grep -n "select" * # select ,
grep -n "select" * -r # select ,
grep -n "select" * -ri # ,
grep -n "select" * -rI # select , ,
grep "select" package * -r # package select
grep "select" --include=*.txt * -r # .txt
grep "select" --exclude=*.bak * -r # .bak
grep "select" --exclude-dir=out * -r # out
4.18 sort(テキストファイルの内容を並べ替える)
sort a.txt # a.txt ,
sort a.txt > sort.txt # a.txt , sort.txt
sort -r a.txt # a.txt ,
注意:sortコマンドでは、ソースファイルの内容は変更されず、ソートされた内容のみが出力されます.4.19 scp(ローカルサーバとリモートサーバの間でファイルまたはディレクトリをコピー)
scp -P 222 [email protected]:/home/chen/test.log . # chen 100.130.99.111, SSH 222, /home/chen/test.log
scp -P 222 history.txt [email protected]:/home/chen/ # history.txt 100.130.99.111 /home/chen/
scp -P 222 -r [email protected]:/home/chen/pro setup/ # chen 100.130.99.111, SSH 222, /home/chen/pro setup
注意:scpコマンドを使用するには、ローカルサーバとリモートサーバがSSHサービスを開始することを前提とします.4.20 stat(ファイル、ディレクトリのinode内容を表示)
stat ab.txt # ab.txt inode
4.21 cut(各行に指定された列の内容を表示)
cut -c 5 ab.txt # ab.txt 5
cut -c -5 ab.txt # ab.txt 1~5
cut -c 5- ab.txt # ab.txt 5
cut -c 2-5 ab.txt # ab.txt 2~5
4.22 wc(テキスト統計)
wc ab.txt # ab.txt 、
wc -l ab.txt # ab.txt
wc -w ab.txt # ab.txt
wc -m ab.txt # ab.txt
wc -c ab.txt # ab.txt
wc -L ab.txt # ab.txt
4.23 du(ディレクトリまたはファイルのサイズを表示)
du -a #
du -h # K,M,G ,
du -s #
du -S # ,
du -sh test # K,M,G , test
4.24 split(ファイルを切断)
split proc.tar.gz -b 2m # proc.tar.gz , 2m 。 , 。 , :xaa、xab
split proc.tar.gz -b 2m -d # , , :x00、x01
split proc.tar.gz -b 2m -d proc.tar.gz # , , :proc.tar.gz00、proc.tar.gz01
split a.txt -C 300k -d a.txt # a.txt , 300k ,
4.25 locate(システム・データベースでファイルまたはディレクトリを検索)
locate a.txt # a.txt
locate -e a.txt # a.txt
locate -c a.txt # a.txt