ユーザ用ツール

サイト用ツール


ターミナル:shellコマンド

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
ターミナル:shellコマンド [2024/10/16 23:14]
kawaue [screen]
ターミナル:shellコマンド [2025/04/22 13:07] (現在)
kawaue
行 8: 行 8:
 |h|容量に接頭辞をつける(human-readable)| |h|容量に接頭辞をつける(human-readable)|
 |--color|ファイル・ディレクトリの種類ごとに色を変える| |--color|ファイル・ディレクトリの種類ごとに色を変える|
 +|t|更新時順で表示(time)|
 +|v|数字順で表示(version)|
 +|S|ファイルサイズ順で表示(Size)|
  
 ====head, tail==== ====head, tail====
行 13: 行 16:
 ^オプション^意味^ ^オプション^意味^
 |n|出力する行数を指定| |n|出力する行数を指定|
 +
 +====grep====
 +文字列の検索
 +^オプション^意味^
 +|r|再帰的に行う(recursive)|
 +|i|大文字と小文字を区別しない(ignore-case)|
  
 ====du==== ====du====
行 196: 行 205:
 $ ls -1 | wc -l $ ls -1 | wc -l
 </code> </code>
 +ls listで1行に1ファイルを表示、その行数を数える。
 ====ディレクトリ構造のみコピー==== ====ディレクトリ構造のみコピー====
 <code> <code>
行 208: 行 217:
 </code> </code>
 ファイル名を探索してrmに渡す。 ファイル名を探索してrmに渡す。
 +
 +=====リダイレクト=====
 +''>''でリダイレクト。コマンドの出力を利用したいときに使う(ログなど)。\\
 +例1:
 +<code>
 +$ hoge.exe 2>&1 | tee log.txt
 +</code>
 +正直何が起こっているのかあまりわかっていない。
 +''&''は複製を意味する。標準出力が複製されて標準エラー出力になっているらしい。結果、標準出力と標準エラー出力が同じ場所に出力される。''tee''コマンドは出力をファイルとターミナルの両方に出力するコマンド。
 +^ファイルディスクリプタ^意味^
 +|0|標準入力|
 +|1|標準出力|
 +|2|標準エラー出力|
 +
 +例2:
 +<code>
 +$ hoge.exe > /dev/null
 +</code>
 +''/dev/null''にリダイレクトすることで出力を捨てられる。つまりブラックホールみたいなもの(by D.H.)
  
 =====Shellスクリプト===== =====Shellスクリプト=====
行 224: 行 252:
 done done
 </file> </file>
 +
 +====計算====
 +変数で受ける方法\\
 +計算式を<nowiki>(())</nowiki>で囲む。
 +<file bash hoge.sh>
 +#!/bin/bash
 +input=${1}
 +((output=${input}+1))
 +echo ${output}
 +</file>
 +上のscriptの出力結果は
 +<code>
 +$ source hoge.sh 1
 +2
 +</code>
  
 ====コメントアウト==== ====コメントアウト====
行 244: 行 287:
 cd `dirname $0` cd `dirname $0`
 </code> </code>
-と書いておく。''$0''は自分の名前を出力し、''dirname''はディレクトリ部分を抽出する。ちなみに''basename''はファイル名部分を抽出する。+と書いておく。''$0''は自分の名前(フルパス)を出力し、''dirname''はディレクトリ部分を抽出する。ちなみに''basename''はファイル名部分を抽出する。
  
ターミナル/shellコマンド.1729120453.txt.gz · 最終更新: 2024/10/16 23:14 by kawaue