LoginSignup
0
1

Linux 基本コマンド

Posted at

ファイル/ディレクトリ参照 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
リンゴ
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1