Linuxデフォルトコマンド


pwd


現在のディレクトリのパスを表示
a@test:~$ pwd
/home/a
a@test:~/folder1$ pwd
/home/a/folder1

mkdir


現在のディレクトリの場所に新しいディレクトリを作成
a@test:~$ mkdir folder2

ls


現在のディレクトリのファイルとディレクトリのリストを出力
a@test:~$ ls
folder1 test.txt

ls-オプション

ls -a : 숨김파일 및 디렉토리까지 출력
a@test:~$ ls -a
. .. .bash_logout .bashrc .cache folder1 .profile .sudo_as_admin_successful text.txt
ls -l : 파일 및 디렉토리를 자세히 출력
a@test:~$ ls -l
total 8
drwxrwxr-x 2 a a 4096 Oct 26 00:28 folder1
-rw-rw-r-- 1 a a    8 Oct 26 00:46 test.txt
(권한)(포함된 파일 수)(소유자)(그룹)(파일크기)(수정일자)(파일이름)
ls -R : 현재 디렉토리에 있는 하위 디렉토리의 파일 및 디렉토리까지 출력
a@test:~$ ls -R
.:
folder1 test.txt
./folder1:
ls -h : 파일 크기의 단위값을 표시하여 출력
a@test:~$ ls -alh
total 32K
drwxr-xr-x 4 a    a    4.0K Oct 26 00:47 .
drwxr-xr-x 3 root root 4.0K Oct 25 23:33 ..
-rw-r--r-- 1 a    a     220 Feb 25  2020 .bash_logout
-rw-r--r-- 1 a    a    3.7K Feb 25  2020 .bashrc
drwx------ 2 a    a    4.0K Oct 25 23:34 .cache
drwxrwxr-x 2 a    a    4.0K Oct 26 00:28 folder1
-rw-r--r-- 1 a    a     807 Feb 25  2020 .profile
-rw-r--r-- 1 a    a       0 Oct 25 23:35 .sudo_as_admin_successful
-rw-rw-r-- 1 a    a       8 Oct 26 00:46 test.txt
(권한)(포함된 파일 수)(소유자)(그룹)(파일크기)(수정일자)(파일이름)

cd


変更するディレクトリのパスを指定
cd .. => 親ディレクトリへ移動(相対パス)
cd~ユーザのホームに移動
a@test:~$ cd folder1
a@test:~/folder1$ pwd
/home/a/folder1
a@test:~/folder1$ cd ..
a@test:~$ pwd
/home/a
a@test:/$ pwd
/
a@test:/$ cd ~
a@test:~$

rm


ファイルとディレクトリの削除
a@test:~$ rm test.txt
フォルダの場合、-rオプションを使用して削除できます.
(-r,再帰再帰削除=>ディレクトリ内のサブディレクトリまたはファイル)
a@test:~$ rm -r folder1

help


コマンドのヘルプ出力
a@test:~$ ls --help
a@test:~$ rm --help

man


helpコマンドと似ていますが、独立したページのマニュアルとしてコマンドが提供されています.
a@test:~$ man ls

cp


ファイルまたはディレクトリコマンドのコピー
a@test:~$ cp test1.txt folder1
// test1.txt 파일을 folder1 디렉토리 안으로 복사
a@test:~$ cp -r folder1 folder2
// folder1 디렉토리를 folder2 디렉토리 안으로 복사
// 디렉토리 복사 시 -r옵션을 이용하여야 함
// folder1 에 복사한 test.txt 파일이 있기 때문에 해당 파일까지 복사하기 위함
a@test:~/folder2/folder1$ pwd
/home/a/folder2/folder1
a@test:~/folder2/folder1$ ls
test.txt

mv


ファイルまたはディレクトリの移動または名前変更
移動するディレクトリがない場合は、ファイルの名前を変更します.
a@test:~$ mv test.txt folder1
a@test:~$ cd folder1
a@test:~/folder1$ ls
test.txt
a@test:~$ mv test.txt test2.txt
a@test:~$ ls
folder1 folder2 test2.txt

sudo, su


スーパーユーザー権限(super user do)は、Linuxシステムに影響を与える操作を実行するために必要なコマンドを意味します.
su:スーパープレイヤーになるために
a@test:~$ sudo apt-get install git

wget


Webサイト上のファイルや画像などをダウンロードするコマンドです.
a@test:~$ wget http://kor.theasian.asia/wp-content/uploads/2019/06/6000220501_20090417.jpg
または名前を付けて保存(-O保存する名前)
a@test:~$ wget -O 5manwon.jpg http://kor.theasian.asia/wp-content/uploads/2019/06/6000220501_20090417.jpg

git


バージョン管理専用ツール
githubなどでクローンを取得して使用
a@test:~$ git clone https://github.com/facebook/react.git

cat


複数のファイルの接続と出力に使用するか、1つのファイルのみを出力できます.
-nオプションを使用して行番号を貼り付けて出力できます
a@test:~$ cat test.txt
hi my name is linux
a@test:~$ cat test2.txt
aaaiii
a@test:~$ cat test.txt test2.txt
hi my name is linux
aaaiii
a@test:~$ cat -n test.txt
	1 hi my name is linux

head


ファイル内の特定の行にのみ出力されるコマンド(-nコマンドで出力する行を決定できます)
a@test:~$ head -n1 test3.txt
total 184

I/O Redirection


入出力方向の動作を制御する
(>):出力リダイレクト(出力方向、1は標準出力、2は標準エラー)
(<):リダイレクト入力(入力方向)
(>>>):appendリダイレクト(元のデータを保持しながら後でコンテンツを追加)
a@test:~$ ls -l 1> test3.txt
(ls -l의 결과를 test3.txt파일로 저장)
a@test:~$ ls -l >> test3.txt
(ls -l의 결과를 test3.txt파일의 마지막에 추가로 저장)
a@test:~$ rm test4.txt 2> error.log
(test4.txt 파일이 없기 때문에 1>로 redirection하면 오류가 나기 때문에 2>로 error 출력)
a@test:~$ cat < test3.txt
(cat의 Standard Input으로 test3.txt를 입력)
a@test:~$ cat test3.txt
(cat의 인자로서 test3.txt를 전달)

locate


ファイルの場所を検索するコマンド
データベースに格納されているパスをチェックして(ファイルを1つずつ検索するのではなく)出力します.
a@test:~$ locate *.log
/home/a/error.log

find


ファイルの場所を検索するコマンド
ディレクトリを指定し、そのディレクトリから直接サブディレクトリを検索し、パスをチェックして出力します.
(.=現在のディレクトリから検索、~=自分のホームディレクトリから検索、/=rootディレクトリから検索)
a@test:~$ find . -name *.log	// 현재 디렉토리에서 하위 디렉토리까지 검색
./error.log
a@test:~$ find . -type f -name "test*.txt"	// type지정, f는 파일
./test2.txt
./test.txt
./folder2/folder1/test.txt
./test3.txt

whereis


コマンドの場所を検索するコマンド
コマンドとmanファイルの場所を表示
a@test:~$ whereis rm
rm: /usr/bin/rm /usr/share/man/man1/rm.1.gz
$PATH=Linuxが作成した環境変数
whereisコマンドは$PATHのすべてのパス値を検索し、検索するコマンドの場所を見つけたときに実行します(:パスをコロンで囲みます)
a@test:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

ps


現在実行中のプロセスの出力
a@test:~$ ps
 PID	TTY	    TIME	CMD
1325	tty1	00:00:00	bash
1337	tty1	00:00:00	ps
a@test:~$ ps -ef
...

ctrl+z


現在実行中のプロセスをバックグラウンドに切り替え
「jobs」コマンドを使用して、現在のバックグラウンドのプロセスを表示します.
「fg」コマンドでバックグラウンドに再ロード
a@test:~$ jobs
[1]+ Stopped	vim
a@test:~$ kill -9 %1
[1]+ Killed	vim

id, who


id:自分の名前や所属するグループなどを表示する
who:現在Linuxシステムに接続されているユーザーを表示
a@test:~$ id
uid=1000(a) gid=1000(a) groups=1000(a), 4(adm), 24(cdrom), 27(sudo), 30(dip), 46(plugdev), 116(lxd)
a@test:~$ who
a	tty1	2021-10-28 01:10

新規アカウントの作成

a@test:~$ sudo useradd -m b		// b라는 사용자 생성
a@test:~$ sudo passwd b			// b 사용자의 비밀번호 생성
a@test:~$ sudo adduser b sudo		// b 사용자에게 sudo 권한을 부여
Adding user 'b' to group 'sudo'...
Adding user b to group sudo
Done.
a@test:~$ su - b
Password:
$