Linux よく使うコマンド

unzip, tar, pwd, ls, mkdir, mv, cp, chown, chgrp, chmod
uname, lshw, lspci

これらのコマンドについて、最低限の使い方の説明

コマンドラインでファイル名を入力するときは、途中まで入力して
tabキーを押すと後ろの部分が自動で入ります

zipファイルの解凍、.Windowsのzipファイルの解凍

unzip ファイル名.zip

ファイル名に日本語を含むzipファイルの場合は

unzip -O cp932 ファイル名.zip

tar.bz2ファイル、tar.gzファイルの解凍

tar.bz2ファイル、tar.gzファイルの解凍は、それぞれ

tar xvf ファイル名.tar.bz2

tar zxvf ファイル名.tar.gz

現在のディレクトリを表示する

pwd

現在のディレクトリ下の、ファイル、ディレクトリの一覧

隠しファイル等すべて、名前のみ
ls -a

隠しファイル等すべて、詳細表示
ls -al

DOSコマンドのdirのように1列に表示する
ls -1
ls -a1

ディレクトリを作成する

mkdir

ファイルやフォルダーの名前変更、移動

mv 元ファイル名 新しいファイル名
mv 移動元ファイル名 移動先フォルダー名

新しいファイル名に同じ名前のものがある場合には
警告メッセージが出て、中断されます。
強制オプションをつけると警告なく上書きされます

mv 移動元フォルダー名 移動先フォルダー名

(例) mv source-dir /home/anonymous/dest-dir

移動先フォルダー dest-dir がまだない場合は、
/home/anonymous 以下に source-dir を中身ごと移動し、
その source-dir を dest-dir に改名した状態になります

以下のように移動され、元のsource-dir/* は無くなる

source-dir/*

/home/anonymous/dest-dir/*

移動先フォルダー dest-dir がすでにある場合、
/home/anonymous/dest-dir 以下に、source-dir が
中身ごと移動された状態になります

以下のように移動され、元のsource-dir/* は無くなる

source-dir/*

/home/anonymous/dest-dir/source-dir/*

ファィルやフォルダーのコピー

cp コピー元ファイル名 コピー先ファイル名
cp コピー元ファイル名 コピー先フォルダー名

コピー先ファイル名に同じ名前のものがある場合、
警告メッセージが出て、中断されます。
強制オプションをつけると警告なく上書きされます

cp -r コピー元フォルダー コピー先フォルダー

(例) cp -r source-dir /home/anonymous/dest-dir
r 再帰的にコピーする

コピー先フォルダー dest-dir がまだない場合は、
/home/anonymous 以下に source-dir を中身ごとコピー、
その source-dir を dest-dir に改名した状態になります

以下のようにコピーされ、元のsource-dir/* はそのまま

source-dir/*

/home/anonymous/dest-dir/*

コピー先フォルダー dest-dir がすでにある場合、
/home/anonymous/dest-dir 以下に source-dir が
中身ごとコピーされた状態になります

以下のようにコピーされ、元のsource-dir/* はそのまま

source-dir/*

/home/anonymous/dest-dir/source-dir/*

Linuxでのファイルのアクセス権

所有者とグループを設定する

chown ユーザー:グループ ファイル名

グループを設定

chgrp グループ ファイル名

所有者とグループとその他が行える操作を設定

chmod フラグ ファイル名

フラグの組み合わせ

PC名、ハードウェア、カーネル、gnome、gtkなどのバージョン

PC名、カーネルのバージョンは、Linux mint メニュー → システムツール
→ システムモニターで、システムタブを開くか、以下のコマンド

uname -a

ハードウェアのバージョン、その他の情報を表示する

lshw
lspci

gnome のバージョンを確認

gnome 3の場合
more /usr/share/gnome/gnome-version.xml

gnome 2の場合
more /usr/share/gnome-about/gnome-version.xml

gtk のバージョンを確認

apt policy libgtk2.0-0 libgtk-3-0

gcc のバージョン

gcc --version

glibc のバージョン

ldd --version

すこし応用 ”xargs chmod 644″、と、”-exec chmod 644 {} \;”の違い

find . -name “*.txt” | xargs chmod 644、は
以下のように展開されます

chmod 644 a.txt b.txt c.txt

find . -name “*.txt” -exec chmod 644 {} \;、は
以下のように展開されます

chmod 644 a.txt
chmod 644 b.txt
chmod 644 c.txt

テキストエディターに下記のC言語のコードをコピペし
arglist.cという名前で保存してコンパイルして
適当に3つファイルを作ってテストしてみると分かります

#include <stdio>
int main(int argc, char* argv[]) {
  for (int i = 0; i < argc; i ++) {
    printf("argv[%d]: %s\n", i, argv[i]);
  }
  return 0;
}

コンパイル
gcc arglist.c -o arglist

テキストファイルを 3つ作る
echo “This is a.txt” > a.txt
echo “This is b.txt” > b.txt
echo “This is c.txt” > c.txt

テスト
find . -name “*.txt” -exec ./arglist {} \;
find . -name “*.txt” | xargs ./arglist

find & grep

find . -name “*.html” -exec grep -Hn “検索文字列” {} \;

grepオプション
-H ファイル名を表示
-n 行番号を表示

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA