Chanler

Chanler

Linux 入門コマンド

シェルはユーザーコマンドを受け取り、os に実行を渡します
image.png|500


基本ナビゲーションと表示#


pwd#

pwd、現在のディレクトリの絶対パスを表示します


ls#

list、現在のディレクトリ内のファイルを列挙します

パラメータ:
-l 各ファイルの属性を列挙します。一般的には ll の略称があります。

drwxr-xr-x@ 2 fling staff  64  5 24 15:42 test
^ ^  ^  ^ ^ ^   ^     ^     ^   ^ ^  ^     ^
| |  |  | | |   |     |     |   | |  |     |
| |  |  | | |   |     |     |   | |  |     └─ ファイル名/ディレクトリ名 (Name)
| |  |  | | |   |     |     |   | |  └─────── 最後の修正時間 (Modification Time)
| |  |  | | |   |     |     |   | └────────── 最後の修正日 (月の中の日) (Day of Month)
| |  |  | | |   |     |     |   └──────────── 最後の修正月 (Month)
| |  |  | | |   |     |     └──────────────── ファイルサイズ (バイト) (Size)
| |  |  | | |   |     └─────────────────────── 所属グループ (Group)
| |  |  | | |   └──────────────────────────── ファイル所有者 (Owner)
| |  |  | | └──────────────────────────────── ハードリンクの数 (Number of Hard Links)
| |  |  | └────────────────────────────────── 拡張属性フラグ (Extended Attributes Flag - @) (macOS 特有)
| |  |  └──────────────────────────────────── 他のユーザーの権限 (Others' Permissions)
| |  └─────────────────────────────────────── グループユーザーの権限 (Group's Permissions)
| └────────────────────────────────────────── ファイル所有者の権限 (Owner's Permissions)
└──────────────────────────────────────────── ファイルタイプ (File Type)

属性の詳細:

  • ファイルタイプ:
    • -: 通常のファイル (例: 1.txt)
    • d: ディレクトリ (例: test)
    • l: シンボリックリンク
    • c: キャラクタデバイスファイル
    • b: ブロックデバイスファイル
    • s: ソケットファイル
    • p: 名前付きパイプ

  • ファイル権限:
    • 三つのグループに分かれ、各グループは三文字で、ファイル所有者、所属グループユーザー、他のユーザーの権限を表します
    • 各グループの文字は rwx で、読み取り、書き込み、実行の権限を表し、相応の権限がない場合は - で代用され、簡潔に表すために r\w\x に数字 4\2\1 を割り当てます。

  • ハードリンクの数:
    • ファイルの場合、何個のファイル名がこのファイルの inode を指しているかを示します
    • ディレクトリの場合、通常は 2 + サブディレクトリの数で、各ディレクトリには . が自身を指し、.. が親ディレクトリを指します

-a すべてのファイルを列挙し、隠しファイルも含まれます

.     ..    .env  1.txt test

cd#

c、ディレクトリに入ります

前述の通り .. は親ディレクトリを表します
cd - は前回の位置に戻ることを意味します


tree#

tree [] ディレクトリ [] の構造を表示します


ファイルとディレクトリの操作#


touch#

touch、タイムスタンプを更新しますが、ファイルを作成することもできます


mkdir#

mkdir、ディレクトリを作成します


cat#

cat、特定のファイルの内容を出力します


less#

less、特定のファイルを表示し、上下にスクロールできます。q を押すと戻ります
必要な部分だけを読み取り、表示します
g は先頭、G は末尾
% または p はパーセントジャンプ
/pattern は前方検索、?pattern は後方検索、n は次の一致、N は前の一致
F はファイルの末尾の新しい内容を継続的に監視し、tail -f に似ています


more#

more、特定のファイルを表示し、上にスクロールできません。q を押すと戻ります
ファイル全体を一度にメモリに読み込み、表示します


head#

head、特定のファイルの先頭を出力します

head --lines=n filefile の最初の n 行を出力します


tail#

tail、特定のファイルの末尾を出力します

tail --lines=n filefile の最後の n 行を出力します
tail -f は後続の内容を継続的に表示します


cp#

cp 源 目的 ファイルまたはディレクトリをコピーします


mv#

mv 源 目的 移動、または名前を変更するためにも使用できます


rm#

rm、削除します
rm -r は再帰的に削除し、ディレクトリに使用します


ln#

ln、リンクを作成します
ln -s 源 目的 ソフトリンクで、ファイルを保存せず、単なるショートカットファイルです
ln 源 目的 ハードリンクで、源ファイルのポインタを指し、同じ inode を共有します。参照と見なすことができ、ファイルのみを指すことができます


権限と検索#


chmod#

権限を変更します
u\g\o は三つのグループの権限を表します
chmod u+x file は所有者に実行権限を与えます
数字を使って変更することもでき、例えば chmod 744 file です


file#

file、ファイルの種類を示します。例: 1.txt: ASCII text


where/which/whereis#

where、ファイルの場所を見つけます


出力、パイプと編集#


echo#

echo、コマンドラインに出力します。特殊文字が出現する場合は " " で囲みます

> 標準出力をファイルにリダイレクトします。例: echo "1" > 1.txt
>> はファイルに追加します
< 標準入力をファイルからリダイレクトします


pipe#

command1 | command2 | command3 一つのコマンドの標準出力を別のコマンドの標準入力として使用します

ls -l | grep "*.txt"
cat server.log | grep "ERROR" | less


nano#

Crtl+X で終了、Crtl+O で保存します


vim#

コマンドモードで、:wq で保存して終了、:q! で強制終了、[n]yy で n 行をコピーし、[n]p で n 回をカーソルの次の行に貼り付け、dd で削除します

コマンドモードで i\a\o\I\A\O を入力すると挿入モードに入り、挿入モードで esc を押すとコマンドモードに戻ります


image.png|500

挿入モードで ^ は行の先頭に移動し、$ は行の末尾に移動します

コマンドモードで : を入力すると行末モードに入り、行末モードで esc\enter を押すとコマンドモードに戻ります


変数とワイルドカード#


shell#

変数を定義するには variable=value と記述するだけで定義され、echo ${variable} で確認できます。中括弧は曖昧さを防ぐために使用されます

前方カット、例えば ff=week01 の場合、echo ${ff#week}01 を出力します
末尾 %

? は一文字のプレースホルダー、* は任意の文字のプレースホルダーを指します


for i in $(seq 1 10) 1 から 10 までのシーケンス
for ((i=0;i<10;i++)) C スタイルのループ

一括リネーム

for> do
for> mv ${d} chapter${d#week}
for> done

この記事は Mix Space によって xLog に同期更新されました
元のリンクは https://blog.chanler.dev/posts/tech-learn/linux-command


読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。