Help us understand the problem. What is going on with this article?

シェルコマンドの忘備録(初歩)

◆シェルコマンド入門
paizaで勉強したシェルコマンド入門を辞書代わりに記述します。

02:シェルを呼び出してみよう

pwd:現在いるカレントディレクトリを表示する

03:ファイル一覧を表示しよう

ls:ファイルリスト表示
ls -a:隠しファイルも表示して、ファイルリスト表示
ls -all:隠しファイルと詳細情報も表示


04:ファイルを作ってみよう

echo "hello world" > foo.txt
(内容helloworldのテキストを作る。)
cat foo.txt:
ファイルの中身を出力する。

ls -l:
ファイルの詳細も表示する。
cp foo.txt bar.txt
(fooの内容をコピーしてbarを作成)

mv bar.txt new.txt
(テキストの名前barをnewに変更する)

rm
(ファイルの削除)

演習
echo "hello paiza" > hello.txt
cp hello.txt paiza.txt
mv hello.txt paiza.txt
rm hello.txt


05:ディレクトリを作ろう

mkdir practice
(practiceというフォルダを作る(メイクディレクトリ))

ls -l practice
(これでフォルダの中身一覧を表示する)

mv practice test
(フォルダの名前変更)

ls -all practice
(フォルダ内の詳細情報も記述する)

cp hello.txt paiza/paiza.txt
「paiza」というディレクトリに「hello.txt」というファイルをコピーしてください。

この時、ファイル名を「paiza.txt」に変更してください。


06:ディレクトリを操作しよう

.
(カレントディレクトリの意味)
..
(カレントディレクトリより一つ上の意味)
cd practice
(下の階層へチェンジディレクトリ)

ls -l ..
(上の階層のディレクトリ内のファイル一覧表示)

ls -l ../..
(上の階層のディレクトリ内のファイル一覧表示)

cd ..
上位のディレクトリにカレントディレクトリを変更。


07:ファイルパスを理解しよう (5:37)

ここでは、シェルコマンドでファイルを指定するファイルパスについて学習します。

ファイルパスは、プログラミングでも登場します。
・ ファイルパス

「ファイルパス」とは、ファイルツリーにおいて、各ディレクトリやファイルの位置をテキストで記述したもの。

  • ディレクトリ /home/ubuntu

  • ファイル /home/ubuntu/foo.txt

・絶対パス:ルートディレクトリを起点に記述

ディレクトリを指定する
- /home/ubuntu

  • 先頭にルートを表す「/」、(ディレクトリ名)、「/」(ディレクトリ名)

ファイルを指定する

  • /home/ubuntu/foo.txt

  • 先頭にルートを表す「/」、(ディレクトリ名)、「/」(ディレクトリ名)「/」(ファイル名)

・相対パス:カレントディレクトリを起点に記述

ディレクトリを指定する

  • test/practice

  • (ディレクトリ名)「/」(ディレクトリ名)

ファイルを指定する

  • test/practice/foo.txt

  • (ディレクトリ名)「/」(ディレクトリ名)「/」(ファイル名)

上位ディレクトリは「..」で表す。カレントディレクトリは「.」で表す。

08:ファイルパスを指定しよう

ここでは、シェルコマンドでファイルパスを実際に試します。

先ほどのチャプターで説明した、絶対パスと相対パスでファイル一覧を表示してみましょう。
ルートディレクトリの一覧を表示する
ls -al /
絶対パスでhomeディレクトリを表示する
ls -al /home
絶対パスで、ubuntuディレクトリを表示する
ls -al /home/ubuntu

相対パスでtestディレクトリを表示する
ls -al test

相対パスでpracticeディレクトリを表示する
ls -al test/practice


09:プログラムを実行しよう

・プログラムファイルを作成

echo "puts 'Hello Ruby'" > code/test.rb

(echoを使ってルビーのプログラムを書く。それをrubyファイルに出力する。)

・rubyプログラムファイルを実行する

ruby code/test.rb

Hello Ruby

・パイソンとphpのプログラムを実行する

python hello.py

Hello Python

php hello.php

Hello PHP

・出力のリダイレクト

ls -l > list.txt

(ファイル一覧をlistテキストに表示する)

echo "puts 'hello paiza'" > code/paiza.rb

ruby code/paiza.rb

Linuxコマンド集:ITpro

http://itpro.nikkeibp.co.jp/article/COLUMN/20060223/230520/

  • Linuxコマンド逆引き大全:ITpro

http://itpro.nikkeibp.co.jp/article/COLUMN/20060224/230568/


【オプション】

-a, --all ドット・ファイル(ファイル名の先頭にピリオドがあるファイル)を含んだすべてのファイルを表示する

-b, --escape ファイル名に表示できないコントロール・コードなどが使われている場合,8進数3ケタ(\ddd)で表示する

-c, --time=ctime, --time=status ファイル・ステータスを変更した時間順にソートして表示する。-lオプションと一緒に使用すると内容更新時間がステータス更新時間として表示される

-d, --directory [name]にディレクトリを含んでいる場合,ディレクトリの内容ではなくファイルと同様に表示する

-f ソートせずにディレクトリ内の順番に沿って表示する

-h 単位などを読みやすい形式で表示する

-i, --inode ファイル名の左にインデックス番号を表示する

-k, --kilobytes ファイル・サイズをキロ・バイト単位で表示する

-l, --format=long, --format=verbose ファイルの詳細も同時に表示する。ファイル名,ファイル・タイプ,パーミッション,ハード・リンクの数,オーナー名,グループ名,バイト・サイズ,タイム・スタンプの順に表示する

-m, --format=commas ファイル名をカンマで区切って表示する

-n, --numeric-uid-gid ユーザー名,グループ名を数字を使用して表示する

-o, --color, --colour, --color=yes, --colour=yes ファイル・タイプによって色を付ける

-p ディレクトリ名の最後に/を付けて表示する

-q, --hide-control-chars エスケープ・コードなど表示できない文字列は?と置き換えて表示する

-r, --reverse 逆順にソートして表示する

-s, --size ファイル名の左側にキロ・バイト単位でファイル容量を付加して表示する

-t, --sort=time タイム・スタンプ順にソートして表示する

-u, --time=atime, --time=access, --time=use タイム・スタンプの代わりにアクセス時刻でソートして表示する。また,-lオプションと一緒に使用すると,タイム・スタンプがアクセスした時間に変更される

-x, --format=across, --format=horizontal 水平方向にソート順にファイルを表示する

-A ".."や"."を表示しない

-B, --ignore-backups ファイルの最後にチルダ(~)が付いているファイルを除外して表示する

-C, --format=vertical 上下方向にソート順にファイルを表示していく

-F, --classify ファイル名にファイル・タイプを表す記号を付けて表示する。ディレクトリは"/",実行可能ファイルは"*",シンボリック・リンクは"@",FIFOは"|",ソケットは"="で表わす

-G, --no-group -lオプションでグループを抜いた形で表示する

-L, --dereference シンボリック・リンクはリンク先のファイルが表示する

-N, --literal エスケープ・コードが含まれていても変換せずに表示する

-Q, --quote-name ファイル名をダブル・クォーテーションで囲んで表示する

-R, --recursive ディレクトリ内容を再帰的に表示する(ディレクトリ内をすべて表示)

-S, --sort=size ファイル・サイズ順にソートする

-U, --sort=none ソートせずにディレクトリ内の順番に沿って表示する

-X, --sort=extension 拡張子でソートして表示する

-1, --format=single-column 1行に1ファイルずつ表示する

-w, --width cols 端末の幅をcolsとして表示する

-T, --tabsize cols タブ幅をcolsとして表示する

-I, --ignore pattern patternにマッチするファイルは表示しない

--full-time タイム・スタンプについて曜日,月,日付,時間,年すべて表示する

--help lsコマンドの使用法を表示する

name 指定したファイルやディレクトリのみを表示する。ワイルド・カードを使用することもできる

Why do not you register as a user and use Qiita more conveniently?
  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
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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