タグ付けされた質問 「bash」

Bash(Bourne-Again SHell)は、Ubuntuのコマンドラインインターフェースでデフォルトで使用されるシェルです。

4
端末でプログラムを実行し続ける
そのため、nohupコマンド&がバックグラウンドに入るようにするために、コマンドをよく認識し、接尾辞を付けています。 ただし、グラフィカルアプリケーションを実行すると、どちらも使用できない場合があります。それで、ターミナルが閉じられた後もプログラム/コマンドを実行し続けることを確実にするために、プログラム/コマンドの前に何を付けることができますか?

2
bash:[:引数が多すぎますか?
私はディレクトリを作成してそこに入れようとしていますcd: 〜/ .bashrc: function abc() { appname=$1 appdir="$HOME/code/$appname" if [ mkdir $appdir -a cd $appdir ]; then echo Success else echo Failed to create and switch directory fi } bashrc(. ~/.bashrc)をリロードすると、エラーが発生します。 bash: [: too many arguments Failed to create and switch directory どうすれば修正できますか?そして[:、エラーの意味は何ですか? Ps。誰かが「非暗号化」bashスクリプトチュートリアルに案内してもらえますか?
8 bash  scripts  bashrc 

1
プロンプトに色を表示する
プロンプトをカラーで表示するにはどうすればよいですか?画面にたくさんのテキストが表示され、たくさんのクラッドが表示されます。のような(red)myName(red)@(blue)myMachine:~$(blue)ものが、物事を大幅に簡略化するのに役立ちます。
8 bash  prompt  ps1 

2
デフォルトの文字エンコーディングは何ですか?
この質問が実際にどの程度深いかは、私にはわかりません(たとえば、自分の仕事によっては、いくつか質問があるかもしれません)。 特に、システム上のファイルやフォルダに名前を付けるためにどのような文字列が使用されるかに興味があります。 また、bashまたはpythonスクリプトのデフォルトで文字列がどのように表現されるかに興味があります。



1
bash関数は、$()によって呼び出されたときにローカル変数の値を変更できません
次のコードは、Parse_Short_Switches()が呼び出される方法に応じて動作が異なります。result = $(Parse_Short_Switches)を使用して関数 'Parse_Short_Switches'を呼び出した後、$ error_flagの値は予想どおり-1に設定されません。 単純にParse_Short_Switchesを使用して関数 'Parse_Short_Switches'を呼び出した後、$ error_flagの値は予想どおり-1に設定されます。 どんな助けも大歓迎です。ありがとう #!/bin/bash function Parse_Short_Switches() { echo "error_flag inside of the function= $error_flag" 1>&2 error_flag="-1" echo "blah blah ..." } # --- MAIN --- error_flag="999" echo "error_flag= $error_flag" #result=$(Parse_Short_Switches) Parse_Short_Switches echo "error_flag= $error_flag"

1
フラグpを指定したsed substitutionコマンドが、変更された出力を2回出力するのはなぜですか?
私のa.txtには次のものが含まれています。 apple 123 pear 1234 このコマンドを以下で実行すると、 sed 's/123/AAA/p' a.txt 私は得ると思った apple 123 AAA pear 1234 AAA4 sedはデフォルトで各行を自動的に印刷するためです。そして、パターン空間で修正された後の修正された出力を期待していました。しかし、実際の出力では、置換が2回出力されます。 apple AAA AAA pear AAA4 AAA4 何故ですか?

1
デフォルトの.bashrcでeval式を説明できますか
私は中/etc/skel/.bashrcを見ていましたが、この行を見つけました: [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" 私はテスト-xが何をするのか理解していますが、それ以降のすべてevalは理解できません。 さらに、他のLinuxディストリビューションでこの行を実行すると、エラーが発生します。 # eval "$(SHELL=/bin/bash lesspipe)" bash: syntax error near unexpected token `newline' これはUbuntu 14.04(bash 4.3.11(1))にあり、テストした他のbashバージョンは4.3.39(1)です。 この行が何をしているのか、そしてなぜ上記のエラーが発生するのか説明できますか?

1
ifステートメントでブール式を使用していますか?
if thenステートメントを実行したい:変数iが0〜9の正規表現に等しい場合、およびgrepが結果を返さない場合は、何かを実行します。これは正しい構文ですか? if [[ $i =~ [0-9] ]] && if ! grep $i /opt/tftpboot/*; then またはそれは if [[ $i =~ [0-9] ]] && ! [[ grep $i /opt/tftpboot/* ]]; then
2 bash 

1
行をコメントアウトまたはコメント解除するシェルスクリプト-テスト
#ファイルの単一行から記号を削除しようとしています。行は現在 #/usr/bin/tvservice -o if [[ '$grep tvservice /etc/rc.local' =~ ^# ]] ; then sed -i '/^#.* tvservice /s/^#//' /etc/rc.local ; else echo 1 fi スクリプトに追加する前に、このコマンドが機能するかどうかをテストしてみます。実行すると、>シンボルが取得され、Ctrl+で実行を停止する必要がありますC 文字列をgrep正しく渡さないのですか?私はこれにかなり新しいです。

1
gedit構文の色が表示されない
私はずっと前に書いたいくつかのプログラムを持っています。私は通常geditを使用することを好みません。次の「gui-less」プロジェクトのためにvimスキルを維持するのが好きです。私はgashでbashスクリプトで書かれたプログラムの1つを編集してい#!/bin/bashましたが、上部であってもbash構文を表示しませんでした。他のすべては正常に動作しているようです。これが問題のあるスクリプトです。 #!/bin/bash ############################ # ok, this is going to be # # a remake of my first # # easy access log editing # # Program. # ############################ chmod 770 ~/.Secret_Files vi ~/.Secret_Files/Log17 chmod 000 ~/.Secret_Files sleep .5 echo 'Done' (私の文書の弱い試みのように?) 悪いことはここにあり、askubuntuで構文の色付けを示しただけです。 質問に答えました。追加する必要はありません。
1 bash  gedit  colors 

1
IPに応じてデフォルトのプリンターを設定する
セットアップ: 私は2つの場所でノートブックを使用しています。各場所で、コンピューターはDHCPを介してIPアドレスを受け取ります。このIPアドレスは場所によって異なりますが、場所ごとに一定です。さらに、各場所にはプリンターがあります。 仕事: 両方のプリンターを構成しましたが、IPに従ってデフォルトのプリンターを設定したいと思います。この目的のために、スクリプトを作成し、それをの下/etc/network/if-up.d/set-default-printerに置いて、lpoptions -d実際にデフォルトのプリンターを設定します。 脚本: #!/bin/sh ip_A="1.1.1.1" ip_B="2.2.2.2" pr_A="Printer-A" pr_B="Printer-B" ip=$(hostname -I | cut -d " " -f 1) if [ $ip = $ip_A ]; then lpoptions -d $pr_A touch /home/user/A fi if [ $ip = $ip_B ]; then lpoptions -d $pr_B touch /home/user/B fi 問題: 残念ながら、デフォルトのプリンターはスクリプトによって変更されません(lpoptions追加の引数なしで確認できます)。 さらなる診断: スクリプトは、コンテンツを貼り付けるか、コマンドラインから呼び出すだけで機能します。 …

2
`ls`の出力を解析していますが、何か問題が発生しました
この単純なスクリプトを作成して、ファイルを再帰的に多くのサブディレクトリにコピーしました。ここでは、3つのサブディレクトリの問題を示しています。次のようにディレクトリに3つのサブディレクトリと2つのファイルがあります 0.003/ 0.007/ 0.015/ program.cpp driver.sh* 以下に示すようprogram.cppに、これらすべてのサブディレクトリにコピーしたいmyscript.sh: #!/bin/bash mydir=`pwd` for i in `ls -la $mydir | grep "[0-9]$" | awk '{print $NF}'` do if [ -e $mydir/$1 ] then echo "cp -i $1 $i/" else echo "File \"$1\" not found in current directory" fi done コードをテストするためにcp内部echoを配置しました。出力がおかしい、 cp -i program.cpp 32/ …
1 bash  scripts 

1
エラーが返されない場合、接続が機能しているかどうかを確認します
iscsiクライアントをサーバーに接続するためのbashスクリプトの作業。 このコマンドをどのように配置しますか: iscsiadm -m discovery -t st -p 10.0.0.30 接続が確立されたかどうかを確認するifで、そうでない場合はエラーを返します。 接続が見つかった場合、ターゲットは接続します: iscsiadm -m node -l -T iqn.2014-02.com.example -l -p 10.0.0.30:3260
1 12.04  bash  scripts 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.