最後に実行されたコマンドを表示する起動スクリプトの作成

最後に実行されたコマンドを表示する起動スクリプトの作成

一部を表示するスクリプトを作成しようとしています。ユーザー情報と最後に実行された5つのコマンドこの図のように:

ここに画像の説明を入力してください。

、少し調査の最後に、以下を行いました。

#!/bin/bash

echo "Hello $USER, Your UID is $UID , Your full name is $user_full_name "
export HISTIMEFORMAT= `%F %T %t`
history 5

残念ながら、出力は次のようになります。

Hi user1 , Your UID is 500 , Your full name is: 
bash: fg: no job contorl

助けが必要ですか?

答え1

「を編集してください。過去の時間形式のエクスポート「ラインは

export HISTTIMEFORMAT="%F %T %t"
  • 等号 = の後にはスペースを入れないでください。
  • バックティックの代わりに二重引用符を使用してください。

user_full_nameに関する質問に答えるように編集されました。

我々はありませんユーザー名デフォルトでは変数ですが、作成できます。

#!/bin/bash
#
# taking first part (up to a first comma symbol)
# from "Full name of the user (GECOS)" field of /etc/passwd file
# and removing double quote symbols from it
user_full_name=$(/bin/getent passwd $USER |cut -d: -f5|cut -d, -f1|sed 's/"//g')
# if that field is empty, using username as full name
[ -z "$user_full_name" ] && user_full_name=$USER
export user_full_name
#
echo "Hello $USER, Your UID is $UID , Your full name is $user_full_name "
export HISTTIMEFORMAT="%F %T %t"
history 5

関連情報