GNU/Linux >> Linux の 問題 >  >> Linux

コマンドライン引数をBashスクリプトに渡しますか?

私はbashスクリプトプログラミングに不慣れです。

1つの文字列引数(名前)を入力として受け入れるbashスクリプト「deploymLog」を実装したいと思います。

[[email protected] Desktop]# ./deploymLog.sh name

ここでは、文字列argument(name)をコマンドラインから渡します

最初のステップとして、現在のタイムスタンプとこの入力文字列を Logone.txtなどのログファイルに追加する必要があります。 以下の形式で現在のディレクトリにあります:

[name]=[System time timestamp1]

どうすれば可能ですか?

承認された回答:

$> cat ./deploymLog.sh 
#!/bin/bash

name=$1
log_file="Logone.txt"

if [[ -n "$name" ]]; then
    echo "$1=$( date +%s )" >> ${log_file}
else
    echo "argument error"
fi

コマンドラインからの最初の引数は、位置パラメーター $ 1で見つけることができます。 。 [[-n "$ name"]] $ nameかどうかをテストします 空ではありません。 date +%s 現在のタイムスタンプをUnix時間で返します。 >> 演算子は、ファイル内の既存のデータに追加することによってファイルに書き込むために使用されます。

$> ./deploymLog.sh tt

$> cat Logone.txt 
tt=1329810941

$> ./deploymLog.sh rr

$> cat Logone.txt 
tt=1329810941
rr=1329810953

より読みやすいタイムスタンプについては、 dateで遊ぶことができます 引数。


Linux
  1. Bashスクリプトで1行ずつ読む

  2. bash 引数で引用符を保持する

  3. Linux で GDB を起動するときにコマンドライン引数を渡すにはどうすればよいですか?

  1. docker run へのコマンドライン引数

  2. ソースコマンドによって呼び出されたスクリプトに引数を渡す方法は?

  3. jenkins パイプラインで bash コマンドを実行する

  1. 6 Expectスクリプトのコマンドライン引数の例

  2. bash:特殊文字を含むコマンドライン引数を渡す方法

  3. 単一行の場合はバッシュ