ログイン時にメッセージを表示しようとしています。Linux Mint 17.2。私は成功せずに様々な方法を試しました。
/home/myusername/Desktop/startup-message.sh
1) 以下のようにファイルを作成しました。
#!/bin/bash
echo "My startup message"
pause
exit
ファイルを実行可能にし、コマンドラインから実行できることを確認しました。
bash "/home/myusername/Desktop/startup-message.sh"
または
sh -c "/home/myusername/Desktop/startup-message.sh"
その後、Mintの「Launch Application」機能を使用して新しいエントリを追加しました。私は試した:
"/home/myusername/Desktop/startup-message.sh"
bash "/home/myusername/Desktop/startup-message.sh"
sh -c "/home/myusername/Desktop/startup-message.sh"
パス名の周りに引用符が含まれているかどうか。いずれの場合も何も表示されず、「一時停止」は無視されます。
最後に、一時停止後にファイルをコピーするコマンドを追加したところ、ファイルがコピーされました。これにより、スタートアップファイルでecho
およびが無視されるように見えますpause
。おそらく開いている端末がないからです。
2)その後、メッセージを追加しようとしましたが、/etc/profile
ログインしたときにメッセージが表示されませんでした。
3)その後、メッセージを追加しようとしましたが、/etc/motd
ログインしたときにメッセージが表示されませんでした。
では、この簡単な作業をどのように実行しますか?
答え1
機能を混同していますecho
。echo
標準出力ファイル記述子として印刷されます。端末が開いている場合、通常は端末で実行されるコマンド/スクリプトの標準出力になります。echo
端末自体は開かれません。
起動時にメッセージを表示するには、次の方法を使用する方が「グラフィックス」ですzenity
。
zenity --info --text "Hello, world!"
これを起動スクリプトに入れると、この効果を示すメッセージボックスが表示されます。
またmotd
、テキストベースのログインメッセージを印刷すると(たとえば、仮想端末にログインしたり、ログインを介してssh
)、必要に応じて機能しなくなります。
起動時に端末を具体的に開くには、スクリプトで次のように実行できます。
xterm -e 'bash -c "echo My startup message;sleep 10"'
答え2
~/.bashrc
このエコーをまたはに追加したらどうでしょうか~/.bash_profile
?
より多くの情報が必要な場合は訪問してください.bashrcと.bash_profileの説明
~/.bashrc および ~/.bash_profile は、bash が呼び出されたときに実行できるスクリプトです。次のコマンドでbashを実行すると、~/.bashrcファイルが実行されます。インタラクティブログインシェルではなくシェル。 ~/.bash_profileでのみ可能ログインシェル。