Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Linux初心者がIoTゲートウェイを触る時に使ったコマンドをメモ

LinuxベースのOSが入ったIoTゲートウェイを触る時によく使うコマンドのメモです。
入門の位置付けなので、それぞれのコマンドのオプションなどの深追いはしていません。ここで挙げていないオプションもたくさんあるので、気になった方は調べてみてください。

※できるだけそのまま使えるように、コマンド開始記号は省いています。

端末への接続に関するもの

シリアル接続する

screen {接続先} {接続先端末のボーレート}
例えば、ボーレートが115200 bps、接続先が /dev/tty.usbserial-xxxxxx の端末に接続したい場合
screen /dev/tty.usbserial-xxxxxx 115200

接続を終えたい場合は command + a + k で セッションを終わらせましょう。セッションが残っていると、再接続の際にうまくいかないことがあります。

SSH接続する

ssh {ログインユーザ}@{送信先のIP}
例えば、 user1 というログインユーザを利用して、IPアドレス 192.168.0.10 の端末に入りたい場合
ssh user1@192.168.0.10

ユーザーに関するもの

ユーザーを切り替える

rootユーザーに切り替える

  • su ← super user
su
  • パスワードが必要です
  • デフォルトのパスワード設定は各機器の初期設定やOSによって異なります

例えば、 user1 に切り替える

su user1

パスワードを変更する

passwd
  • その後、現在のパスワードを入力(currentとある場合)
  • 変更したいパスワードを入力(Retypeと出た場合はもう一度打つ)

実行に関するもの

実行中のプロセスのうちで特定のワードが含まれるものを出力する

  • ps ← process
ps aux | grep {検索したいワード}

実行中のプロセスを強制的に終わらせる

kill {終了させたいプロセスの番号}

過去の実行コマンドの履歴を出力する

history

過去の実行コマンドから特定のワードが含まれるものを出力する

history | grep {検索したいワード}

ファイルに関するもの

ファイル・ディレクトリの一覧表示

  • ls ← list

隠しファイル( .始まり)も表示したい時

ls -a

ファイルサイズを単位つきでわかりやすくしたい時

ls -lh
オプションは組み合わせられます
ls -lah

ファイルコピー

ファイルを別の場所にコピーする

cp {コピー元ファイル名} {コピー先ディレクトリ}

ファイルの中身を別のファイルにコピーする(別名で保存する)

cp {コピー元ファイル名} {コピー先ファイル名}

ファイル検索

全ファイルから、ファイル名に特定のワードが含まれるファイルを出力する

find / -type f -name {検索したいワード}
  • / の検索先が全てのディレクトリ(=全てのファイル)を表します
  • 検索には * のワイルドカードを利用します。利用しない場合は、一意のファイル名検索となります
  • ファイルではなくディレクトリを検索したい場合は、 -type d にします
例えば、ファイル名に test が含まれるファイルを出力したい場合
find / -type f -name `*test*`

全ファイルから、特定の期間に更新されたファイルを出力する

  • mtimemodified time
find / -type f -mtime {数字}

例えば、現在時刻から三日(72時間)以内に更新されたファイルの場合

find / -type f -mtime -3

例えば、現在時刻から三日以上前に更新されたファイルの場合

find / -type f -mtime +3

例えば、現在時刻から三日前(72時間前〜96時間前)の間に更新されたファイルの場合

find / -type f -mtime 3

全ファイルから、特定の期間にアクセスされたファイルを出力する

  • atimeaccessed time
find / -type f -atime {数字}

例は mtimeを参考にしてください。

全ファイルから、特定の日時にアクセスされたファイルを出力する

find / -type f -daystart -atime {数字}
  • -daystartオプションで、1日の始まりを0時とすることができます

例えば、三日前の0時から24時の間にアクセスされたファイルを出力する

find / -type f -daystart -atime 3
  • mtime の例のような期間指定もできます

現在のディレクトリ以下から、ファイル内テキストに特定のワードが含まれるファイルを出力する

grep ./ {検索したいワード} -slr *
  • -s オプションでディレクトリの場合の出力(エラー出力)をスキップします
  • -l オプションでファイル名だけ出力するようにします
  • -r オプションでディレクトリ内のさらにディレクトリに再起的に検索を行います

あるファイルの中で特定のワードが含まれる列を出力する

grep {検索対象のファイル} {検索したいワード} * -sn
  • -n オプションで行数表示させます
例えば、 syslog に出力された rc.local の実行に関するログを見たい場合
grep /var/log/syslog rc.local * -sn

ファイル転送

手元の端末から別端末にファイルを転送する(SSHログインが必要)

scp {送信したいファイル} {ログインユーザ}@{送信先のIP}:{送信先フォルダ}
例えば、 user1 というログインユーザを利用して、IPアドレス 192.168.0.10 の端末に入って、そのディレクトリの /home/ 以下にファイル test_script.sh を置きたい場合
scp test_script.sh user1@192.168.0.10:/home/

ログファイル

ログファイル名を指定し、ファイルの最終行から遡って10行分のログを表示し続ける

tail -F {コンソールに出力したいログファイル名}
  • 途中でログローテートなどによりファイル名が変更された場合は、同名のファイルをもう一度探し、開き直してくれます
  • ファイル名変更後も引き続き同じファイルを参照し続けたい場合は、-F オプションの代わりに -f を使います
  • 行数を指定する場合は -n オプションを利用します
  • コンソールがログ出力で占拠されるので、別ターミナルを開くなどの工夫が必要です

圧縮ファイル

.xz ファイルを解凍する

xz -d {file_name}.xz

圧縮されたファイルとは別のファイルとして解凍ファイルを作成する

xz -d {file_name}.xz --keep

ファイルを .xz 形式で圧縮する

xz -z {file_name}
  • オプション指定で別の形式を選べます

元ファイルとは別のファイルとして圧縮ファイルを作成する

xz -z {file_name} --keep
USI
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away