ファイル/ディレクトリ参照 ls
ls [オプション] [ファイル]
オプション | |
---|---|
-a | 隠しファイルも含め全て出力 |
-l | 長 (Long) 形式で出力 |
-t | 最終更新時間 (Time) によって、ソートをして出力 |
-r | 逆順 (Reverse) にソートをして出力 |
ubuntu
reiji@utm-ubuntu:~$ ls -a
. .bash_history .bashrc .config Documents .local Pictures Public .sudo_as_admin_successful Videos
.. .bash_logout .cache Desktop Downloads Music .profile .ssh Templates
reiji@utm-ubuntu:~$ ls -l
total 32
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Desktop
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Documents
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Downloads
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Music
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Pictures
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Public
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Templates
drwxr-xr-x 2 reiji reiji 4096 Mar 9 07:54 Videos
reiji@utm-ubuntu:~$ ls -t
Desktop Documents Downloads Music Pictures Public Templates Videos
reiji@utm-ubuntu:~$ ls -r
Videos Templates Public Pictures Music Downloads Documents Desktop
reiji@utm-ubuntu:~$
コピー cp
cp [オプション] コピー元 コピー先
オプション | |
---|---|
-i | 処理を行なうときに確認をします。誤って上書きコピーすることを防ぐために利用されます。 |
-r | ディレクトリをコピーします。cp コマンドは基本的にファイルをコピーする機能のみですが、-r オプションを付けていると、ディレクトリの中にある全てのファイル・ディレクトリに対してコピーを行なうことができます。 |
-p | 元ファイルの情報を保存します。ファイルには所有者・属性・更新日時など、ファイルに関するさまざまな情報があります。cp コマンドでコピーをすると、新しいファイルはそれらが全て新しい内容になってコピーされます。新しい内容を作成せず、古い情報を保持したままコピーを作成したい場合、この-p オプションを付けます。 |
移動・ファイル名変更 mv
mv 移動元ファイル 移動先ファイル
オプション | |
---|---|
-i | 処理を行なうときに確認をします。ファイルを上書きするときなど、-i オプションを付けていると、コンピュータが確認のための問い合わせをしてきます。誤って上書きされることを防ぐために利用されます。 |
-f | 強制的に処理を実行します。一部の処理では、mv コマンドが確認の問い合わせをします。その確認を無視し、強制的に処理を実行するためのオプションが-f です。 |
ファイル新規作成 touch
touch ファイル名
オプション | |
---|---|
-c | ファイルが存在しない場合、ファイルが存在しなくても新規ファイル作成はされません。 |
ファイルの削除 rm
rm ファイル名
オプション | |
---|---|
-i | 処理を行なうときの確認です。対象ファイルを本当に削除してよいか、確認のための問い合わせをします。誤って削除することを防ぐために利用されます。 |
-f | 強制的に処理を実行します。ファイルによっては、削除に確認を求められる場合がありますが、-f オプションはその確認を無視して、強制的に処理を継続します。 |
現在地 pwd
pwd
移動 cd
cd [ディレクトリ名]
ディレクトリ作成 mkdir
mkdir ディレクトリ名
オプション | |
---|---|
-p | 階層的にディレクトリを作成できる |
ubuntu
reiji@utm-ubuntu:~/practice$ ls
food fruits
reiji@utm-ubuntu:~/practice$ mkdir country/japan
mkdir: cannot create directory ‘country/japan’: No such file or directory
reiji@utm-ubuntu:~/practice$ mkdir -p country/japan
reiji@utm-ubuntu:~/practice$ ls country
japan
reiji@utm-ubuntu:~/practice$
ディレクトリ削除 rmdir
rmdir ディレクトリ名
オプション | |
---|---|
-p | 指定した階層までのディレクトリを一括で削除します。オプションを付けないで rmdir コマンドを実行した場合は、最下層のディレクトリのみ削除します。ただしいずれの場合も、対象とするディレクトリ内は空でなければなりません。 |
rm -r ディレクトリ名
オプション | |
---|---|
-r | ディレクトリが空でなくても強制的に削除する |
ファイルの中身を表示 cat
cat ファイル名
オプション | |
---|---|
-n | 行番号を付加して表示します。 |
ページャを使った表示 more less
more ファイル名
項目 | |
---|---|
スペース | 次のページに進む |
b | 前の一画面に戻る |
f | 次の一画面に進む |
/文字列 | 検索。n キーで検索結果をジャンプします |
q | ページャコマンドを終了 |
less ファイル名
項目 | |
---|---|
スペース | 次のページに進む |
b | 前の一画面に戻る |
f | 次の一画面に進む |
↑ | 前の行に進む |
↓ | 次の行に進む |
/文字列 | 検索。n キーで検索結果をジャンプします |
q | ページャコマンドを終了 |
ファイルの検索 find
find パス -name ファイル名
ubuntu
reiji@utm-ubuntu:~/practice/other$ find ~ -name apple
/home/reiji/practice/fruits/apple
PATH環境変数に含まれるコマンドを表示
which コマンド名
ubuntu
/home/reiji/practice/fruits/apple
reiji@utm-ubuntu:~/practice/other$ which cat
/usr/bin/cat
reiji@utm-ubuntu:~/practice/other$ which sudo
/usr/bin/sudo
使えるオプションを表示
コマンド --help
マニュアルを表示
man コマンド名
grep検索
grep [オプション] 検索条件 [指定ファイル]
オプション | |
---|---|
-e | 文字列を検索パターンとして扱う。 |
-i | 検索パターンと入力ファイルの双方で、英大文字と小文字の区別を行わない。 |
-v | 検索パターンとマッチしなかった行を選択する。 |
ソート
sort [オプション] ファイル名
オプション | |
---|---|
-r | 逆順でソートする。 |
-k n | n 列目のデータをソートする。 |
-n | 数値としてソートする。 |
ubuntu
reiji@utm-ubuntu:~/practice/other$ cat score
yoshinori kawazu 85
keiichi oka 70
toru minemura 100
reiji@utm-ubuntu:~/practice/other$ sort -r score
yoshinori kawazu 85
toru minemura 100
keiichi oka 70
reiji@utm-ubuntu:~/practice/other$ sort -k 2 score
yoshinori kawazu 85
toru minemura 100
keiichi oka 70
reiji@utm-ubuntu:~/practice/other$ sort -n -k 3 score
keiichi oka 70
yoshinori kawazu 85
toru minemura 100
連続した重複行の消去
uniq ファイル名
ubuntu
reiji@utm-ubuntu:~/practice/other$ cat uniq-sample
AAA
BBB
AAA
CCC
CCC
DDD
reiji@utm-ubuntu:~/practice/other$ uniq uniq-sample
AAA
BBB
AAA //AAAは2つあるが連続していないため、消去されない
CCC
DDD
置換 tr
tr 文字列 1 文字列 2
比較 diff
diff [オプション] ファイル 1 ファイル 2
オプション | |
---|---|
-c | context diff 形式で差分を出力します。 |
-u | unified diff 形式で差分を出力します。 |
ubuntu
reiji@utm-ubuntu:~/practice/other$ cat file1
test text
reiji@utm-ubuntu:~/practice/other$ cat file2
test text
new line
reiji@utm-ubuntu:~/practice/other$ diff file1 file2
1a2
> new line //異なる部分を出力
reiji@utm-ubuntu:~/practice/other$ echo "minus" >> file1
reiji@utm-ubuntu:~/practice/other$ diff -u file1 file2
--- file1 2024-03-12 22:58:29.200642380 +0000
+++ file2 2024-03-12 22:54:41.041533846 +0000
@@ -1,2 +1,2 @@
test text
-minus // マイナスはfile2にない行
+new line // プラスはfile2にしかない行
【vi】ファイルを開く
vi ファイル名
※閉じる ESC→:q
※保存する ESC→:w
※保存して閉じる ESC→:wq
※強制終了 ESC→:q!
コマンドモード | |
---|---|
:q | 閉じる |
:w | 保存する |
:wq | 保存して閉じる |
:q! | 強制終了する |
i | インサートモードに切り替える |
a | インサートモードに切り替える |
fn+BackSpace | カーソルの右側を削除する |
h | 左へカーソル移動 |
j | 下へカーソル移動 |
k | 上へカーソル移動 |
l | 右へカーソル移動 |
0 | カレント行の文頭へカーソル移動 |
$ | カレント行の文末へカーソル移動 |
Ctrl + f | 次のページへ移動 |
Ctrl + b | 前のページへ移動 |
:行数 | 指定した行へ移動 |
gg | 文頭へ移動 |
x | 1文字削除 |
dd | 1行削除 |
yy | 1行コピー |
nyy | n行コピー |
p | カーソルの文字の次または次の行にペースト |
P | カーソルの文字の前または前の行にペースト |
u | カット、ペーストを一回取り消し(アンドゥ) |
/検索文字列 | 文字列の検索 |
n | 下方向へ再検索 |
N | 上方向へ再検索 |
:対象の行 s/検索文字列/置換文字列/オプション | 文字列を置換する |
インサイトモード | |
---|---|
ESC | コマンドモードに切り替える |
文字列を出力する
echo [オプション] 文字列
オプション | |
---|---|
-n | 改行を抑制します。通常の出力は改行されますが、このオプションがあると改行されません。 |
ubuntu
reiji@utm-ubuntu:~/practice/shellscript$ apple=リンゴ
reiji@utm-ubuntu:~/practice/shellscript$ echo apple
apple
reiji@utm-ubuntu:~/practice/shellscript$ echo $apple
リンゴ