新しいディレクトリ「4kaime」を作りましょう.
mkdir 4kaime
指定されたファイル(複数でもよい)を移動先へ移動する.
このとき, 移動先が「無い」か移動先がディレクトリで「なければ」ファイルは移動先の名前に変更される.
もし,ファイルを複数指定したならば,最後のファイルのみ名前が変更され,その他のファイルは消去される.
移動先がディレクトリならば,ファイルはすべてディレクトリの中へ移動される.
代表的なオプションとして以下のものがある.
本コマンドの練習前の準備:
「4kaime」の下で新しいディレクトリ「cp1」を作りましょう.(カレントディレクトリは「4kaime」)
mkdir cp1
作業ディレクトリを「3kaime」下の「mdir1」に (カレントディレクトリは「4kaime」)
cd ../3kaime/mdir1
(カレントディレクトリは「3kaime/mdir1」)
ls
でファイルの存在を確認しましょう
出力結果:documents (gitpodで青色)
練習問題:カレントディレクトリが「3kaime/mdir1」で「documents」を「4kaime/cp1」の下へ移動しましょう
指定されたファイル(複数でもよい)を複製先へ複製する.
このとき,複製先が「無い」か,複製先がディレクトリで「なければ」ファイルは複製先に複製される。
複製先がディレクトリならばファイルはすべてディレクトリの中へ複製される.
代表的なオプションとして以下のようなものがある.
r オプション の説明:「指定されたファイルにディレクトリが含まれる場合、その中のファイルも全て複製する」という説明があり、
ここでの「フィアル」の意味は広義のファイルの意味です(ディレクトリと普通のファイルを含む)。
用語整理:
ファイルという用語がなかなか難敵で、一般的には広義、狭義の意味で使われています。
広義のファイル:ディレクトリ、普通のファイル、シンボリックファイル
狭義のファイル:普通のファイル(3回目、図1中のファイル)
ファイルの種類について、興味があれば、別のサイトの詳細の説明に参照して下さい。
カレントディレクトリが「4kaime/cp1」で「documents」を「3kaime/mdir1」にコピー
カレントディレクトリは「4kaime/cp1」で、以下のコマンドを入力
cp -r documents ../../3kaime/mdir1
ls -l ../../3kaime/mdir1
で「3kaime/mdir1」の下に「documents」の存在を確認すると、
出力結果:
drwxr-xr-x 2 gitpod gitpod 4096 Apr 26 01:56 documents (Gitpod)
drwxrwxr-x 2 cao staff 30 4 27 10:06 documents (演習室パソコン)
カレントディレクトリが「3kaime」でファイル「aaa」と「bbb」を「4kaime」にコピー
カレントディレクトリは「3kaime」で、以下のコマンドを入力
cp -r aaa ../4kaime
cp -r bbb ../4kaime
指定されたファイルを消去する.
代表的なオプションとして以下のようなものがある.
r オプション の説明:「指定されたファイルにディレクトリが含まれる場合、その中のファイルも全て消去する」という説明があり、
ここでの「フィアル」の意味は広義のファイルの意味です(ディレクトリーと普通のファイルを含む)。
用語整理:
ファイルという用語がなかなか難敵で、一般的には広義、狭義の意味で使われています。
広義のファイル:ディレクトリ、普通のファイル、シンボリックファイル
狭義のファイル:普通のファイル(3回目、図1中のファイル)
ファイルの種類について、興味があれば、別のサイトの詳細の説明に参照して下さい。
カレントディレクトリが「4kaime/cp1」で「documents」削除
rm -r documents
指定したファイルの内容を表示する。
オプションの説明は割愛します。
catの使用例
1. cat <ファイル1> ; <ファイル1>の表示
2. cat <ファイル1> <ファイル2> : <ファイル1>と<ファイル2>を連結して表示
3. cat <ファイル1> <ファイル2> > <ファイル3> ; <ファイル1>と<ファイル2>を連結した<ファイル3>の作成
以上の使用例を確認するために、以下のことを行ってください。
カレントディレクトリが「4kaime」で
cat aaa
でファイルaaaの内容を確認。
出力結果:ProEnshu1
cat bbb
でファイルbbbの内容を出力。
出力結果:ZOOM
cat aaa bbb
でファイルの連結表示の確認。
出力結果:
ProEnshu1
ZOOM
cat aaa bbb > cdf
でaaaとbbbの内容を連結させたファイルcdfを作成
cat cdf
でcdfの内容を出力.
出力結果:
ProEnshu1
ZOOM
ファイルのパーミッションを変更する. ( ファイルの保護(パーミッション)及び前回の説明資料p13を 参照, 確認して下さい)
許可の部分で,ファイルに設定する許可情報を指定し,ファイルで許可情報を変更する.
ただし,指定できるファイルは自分自身が所有しているものに限る.
下記の文字を複数組み合わせることによって、パーミッションを変更できる.
ls -l コマンドでファイルのパーミッションを確認することができます。
User:nitta パーミッション:r(読み取り)w(書き込み)x(実行)
Group: staff (nittaが属するGroup ) パーミッション:r(読み取り)w(書き込み不可能)x(実行)
Others: パーミッション:r(読み取り)w(書き込み不可能)x(実行)
ファイル「cdf」を自分以外のユーザーに対する読みとり不許可の設定
カレントディレクトリが「4kaime」で 「cdf」のユーザーの権限を確認
ls -l cdf
出力結果:
-rw-r--r-- 1 gitpod gitpod 15 Apr 26 02:18 cdf
chmod go-r cdf
ls -l cdf
出力結果:
-rw------- 1 gitpod gitpod 15 Apr 26 02:18 cdf
上記の例では、"cdf"ファイルのパーミッションを「グループ(g)とその他のユーザ(o)から読み取り許可(r)を取り除く(-)」変更を行っている。 chmod では,持ち主,グループ,その他ユーザーのパーミッションを一回の命令で指定することもできます.
"3桁の数字"は8進数表示となり,左から一桁目がユーザー,二桁目がグループ,三桁目がその他ユーザの権限を表します.
読み込み可能は4, 書き換え可能は2, 実行可能は1で表現し,その和を打ち込みます.
ファイル「cdf」を
持ち主は読み込み、書き換え,実行全て可能,(4+2+1=7)
グループは、読み込み、実行は可能で書き換え不可 (4+0+1=5)
その他は読み込みのみ可能で、実行・書き換えは不可 (4+0+0=4)
chmod 754 cdf
ls -l cdf
出力結果:
-rwxr-xr-- 1 gitpod gitpod 15 Apr 26 02:18 cdf
ファイルの最終アクセス時刻と最終変更時刻を変えるために使用される。また、新規の空ファイルを作成するためにも使用される。
touch コマンドの基本形式では、touch の後にオプションを指定し、その後に操作対象のファイル名を指定します。複数のファイルを指定することもできます。オプションの順序は任意で、ファイル名の後ろに指定しても構いません。
例えば、ファイル名 "file1.txt" と "file2.txt" の最終アクセス時刻と最終変更時刻を現在のシステム時刻に設定するには、次のように入力します:
touch file1.txt file2.txt
ただし、オプションを指定しない場合、touch コマンドはデフォルトで最終アクセス時刻と最終変更時刻を現在のシステム時刻に設定します。
touch コマンドは、主に空のファイルを生成するために使用されますが、ファイルの最終アクセス時刻や最終変更時刻を変更するためにも使用できます。例えば、ファイル名が "file3.txt" の場合、次のコマンドを入力することで、ファイルの最終アクセス時刻を2022年1月1日00:10:00に設定できます:
touch -a -t 202201010010.00 file3.txt
こちらは、-a オプションを使って最終アクセス時刻を変更し、-t オプションで設定する時刻を指定しています。
空のファイル「4kaime_kadai.txt」を作成し、その最終変更時刻と最終アクセス時刻を現在のシステム時刻に設定してください。
touch 4kaime_kadai.txt
で「4kaime_kadai.txt」というファイルを新規作成可能
ls -lF 4kaime_kadai.txt
でファイル情報を確認
出力結果:
-rw-r--r-- 1 gitpod gitpod 0 Apr 26 05:06 4kaime_kadai.txt