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

Bashは、GNUプロジェクトのUnixライクなオペレーティングシステム用の無料のシェルです。


2
Ifステートメントが期待どおりに評価されない。変数を間違って設定していますか?
特定の単語についてウェブサイトをチェックできるコマンドを作成しようとしています。行末で\を使用して次の行に折り返しました(ここで正しく使用したかどうかはわかりません)。これらの文字はスクリプトに含まれていません。 check=$(lynx -source $1 | grep -i $2) if [[ $check == *"$2"* ]] then /usr/local/bin/sendemail -o tls=yes -f ***@gmail.com -t\ trigger@recipe.ifttt.com -s smtp.gmail.com:587 -xu ***@gmail.com -xp *** -u\ $1 -m "contains the word " $2 "."; else /usr/local/bin/sendemail -o tls=yes -f ***@gmail.com -t\ trigger@recipe.ifttt.com -s smtp.gmail.com:587 -xu ***@gmail.com -xp …

1
.bashrcでエイリアスを設定するときにスペースが許可されないのはなぜですか
Windowsの世界から来た私はcls、コンソールをクリアするために入力する傾向があります。エイリアスを設定したいのでcls、それでも動作します。 エイリアス名、等号、およびコマンドの間にスペースを入れることはできないという記事をオンラインで読みました。例えば、 alias cls = 'clear' <---- doesn't work alias cls='clear' <---- works どうしてこれなの?

1
変数を新しいLinuxシェルに複製する方法は?
その特定のシェルに設定されているすべての環境変数で現在のシェルのレプリカを作成する方法はありますか? 私は、変数を初期化してきたシェルを考えてみましょうvar1、var2とvar3。理想的には、変数値は新しいシェル(たとえば、ターミナルエミュレータの別の(新鮮な)タブのシェル)には認識されません。そこで設定された変数に関して、現在のシェルのレプリカを作成したいと思います。それは可能ですか?

1
Gentooプレフィックスを使用してフラグを設定するにはどうすればよいですか
LFSシステムをインストールしました。その後、システムにgentooプレフィックスをインストールしようとしました。ただし、エラーが発生します。 I'm going to check for some variables in your environment now: it appears ASFLAGS is not set :) it appears CFLAGS is not set :) it appears CPPFLAGS is not set :) it appears CXXFLAGS is not set :) it appears DYLD_LIBRARY_PATH is not set :) it appears GREP_OPTIONS …
1 linux  bash  gentoo 

1
バイナリパッケージがapt-getまたはソースからのビルドによって再インストールされないのはなぜですか?
Debian wheezyサーバーにアスタリスクをインストールしようとしています。このために私は最初に簡単なことをしました sudo apt-get install asterisk これは完璧に機能しました。その後、アスタリスクが実行され、次のコマンドを使用してCLIを入力できました。 asterisk -rvvv いくつかの混乱の後、私はアスタリスクをダンプし、再び再インストールしました: sudo apt-get remove --purge asterisk sudo apt-get install asterisk これは正常に再インストールされ、がsudo service asterisk status表示されますが[ ok ] Asterisk PBX is running.、もうCLIにアクセスできません(asterisk -rvvvと言います-bash: asterisk: command not found)。 それで、私はこの簡単なガイドを使用してソースからそれをインストールしようとしました。すべてのステップは順調に進み、アスタリスクを取得して再度実行できます。しかし、再び、CLIは別のものから開始することを拒否します-bash: asterisk: command not found)。 私がここで間違っていることを誰か知っていますか?または、誰かが私を正しい方向に向けることができますか?すべてのヒントを歓迎します!
1 bash  debian  path  asterisk 


1
iTerm2でCTRL + Wをwerase(Linux / PuTTYのデフォルトのbash動作)にバインドします
私は自宅でマックを使うとコマンドを交換する私の修飾キーを変更したとCTRLので、CTRL+は、TChromeで新しいタブを生成します、CTRL+ Cなどコピーしてあります。私は職場でWindows / Linuxを使用していますが、これらのOS間で一貫したレイアウトが必要です(OSXでコマンドに意識的に切り替えてCTRL職場に戻る必要はありません)。 OSXターミナルを置き換えるためにiTerm2をインストールしました。これにより、ウィンドウを強制終了せずにCTRL+ をキャプチャできWます。最初のスペースまでカーソルの前のテキストを削除するbash / puTTY(werase?)のデフォルトの動作をエミュレートするために、このショートカットを何にバインドするのかわかりません。 find . -name "my.file" -type CTRL+ Wは、上記のコマンドから「-type」を削除します。 find . -name "my.file"

1
特定のユーザー入力でシェルスクリプトを再実行するコマンドを作成する
ホスト名をランダム化するシェルスクリプトを作成していますが、ランダムなホスト名を出力し、たとえばこのホスト名を使用するかどうかを尋ねるプロンプトを表示します NEXTHOST=$(sed `perl -e "print int rand(99999)"`"q;d" /usr/share/dict/words) echo "Do you want to use this hostname? (y/n) read variable_name if [ "$variable_name" = n ] ; then (これは、NEXTHOSTのコマンドを再実行する部分です)、「y」のコードは省略しました。その部分は既に理解しているからです。 nを入力した場合にコマンドを再実行するにはどうすればよいですか?

1
forループ(* .txtのf)は、*。txtファイルが存在しない場合にエラーをスローします
次のような小さなbashスクリプトがあります。 #!/bin/sh for f in ./*.txt do f=$(basename $f) echo "Processing $f" scp somewhere mv $f done/`basename $f` done これは完全に機能していますが、ファイルがなくなるとすぐにこのエラーがスローされます:*.txt: No such file or directory なぜループに入るのか、どのようにこれを行うことができるのか疑問に思っています(おそらく新しいifなしで?)

2
この行をリモートファイルに出力するにはどうすればよいですか?
私はbashシェルを使用して、次の記述の正しい方法を見つけようとしています。 ssh mysuer@remotehost 'echo "update user set url = \'localhost\' where url = \'mydomain.com\';" >> /tmp/db.sql' これまでのところ、上記は機能していません。 ヒットした後、次の行を入力すると、>どこかでオープンクォートを閉じることが予想されます。これを行うには何をする必要がありますか update user set url = 'localhost' where url = 'mydomain.com'; リモートファイルに出力されますか?

0
BashまたはPythonを使用して別のソフトウェアと対話するRSSパーサー
WorkerLinux環境(RaspbianまたはDebianが望ましい)で実行されるプログラムまたはスクリプト(これを呼び出しましょう)を作成しようとしています。RSSフィードからリンクを収集し、処理のために別の2つのプログラムに送信します。 実行Workerすべき特定の手順は次のとおりです。 改行で区切られたテキストドキュメントから複数のRSSフィードを解析する https://example.com/feed.xml?id1 nsfw https://example.com/feed.xml?id2 https://example.com/feed.xml?id3 [...] https://example.com/feed.xml?id9` 各フィードからリンクを抽出する <title>要素内の特定のキーワードを持つリンクを削除します。キーワードは、テキストドキュメントの各フィードに対して、それぞれのリンクから次のようなスペースで区切って設定されます。 https://example.com/feed.xml?id1 nsfw 設定されていない場合-削除する必要はありません。 結果のリンクを<published>要素に基づいて日付/時刻で並べ替えます。例: <published>2018-07-27T01:02:03+00:00</published> handlerプログラムへの最新のリンクを送信します(それは既に存在する外部プログラムです) handler https://received-from-RSS.com/abc 送信されたリンクにマークwatchedを付けます(Raspberry Piで実行する必要があり、SDカードの使用量を減らしたいので、メモリ内でのみ行うことが望ましい) 以下からの応答を収集しhandler、別のリンクが含まれている必要があり、プログラム、およびから得たリンクパスhandlerにplayerプログラムを player https://received-from-Handler.com/xyz player再生が終了して閉じるまで待ちます。次に、(まだマークされていないwatched)リンクを時系列順に送信しますhandler そして、ステージ5から8を繰り返しています。 30分ごとにWorkerRSSフィードからのリンクを更新する必要があります。たとえば、ステージ1〜9を繰り返し、watchedリンクをメモリに保持し、リンクをに送信しませんhandler。 この機能はBashまたはPythonで実装できると思います。プログラミングの経験はありませんがWorker、稼働させることが必要です。ですから、この特定のプログラムを書くのに役立つ特定の学習教材やコード例を教えていただければ幸いです。私のためにそれを書くことを求めているのではありません。別のステップであなたの助けを感謝します。私はいくつかの指示が必要です 完了したら、ここに結果を投稿します。
1 linux  bash  python  rss  raspbian 

1
シェル(bash)を使用して、ファイルから値のキーを決定する
いくつかのアプリケーション展開のスクリプトを作成し、bash(シェル)を使用してプロモーションプロセスを展開しています。これらのスクリプトは、CIプラットフォームが(最近のように)再び失敗する場合に備えて、フェイルセーフとして記述されています。 このプロセスでは、各アプリケーションにキーと値のペアを含むテキストファイルがあり、キーは展開領域の名前(dev、qa、prod)…であり、値は展開可能なファイルに関連付けられたハッシュです。 ファイルをソースするだけで値を収集するのではなく、キーを認識する最良の方法を決定するのに苦労しています...しかし、ファイルをソースして、各展開領域の値を手動で比較するのは長い道のりのように思えます。 RECAP 1.値(sha1sum)はありますが、それが属するキーが必要です2.ファイルからキー値ペアのキーを決定します3.関連する値を持つ最高のデプロイメント領域を決定します(複数の領域が潜在的に同じ値がリストされている場合、チェーンを登るにつれて可能性が高くなります。) 助言がありますか? 編集1 必要なコードが存在する場所は次のとおりです。 ################################################################################################### # IS THIS HASH CURRENTLY DEPLOYED SOMEWHERE ELSE? IF SO, WHERE? ################################################################################################### grep "${deployHash}" "${deployHashHome}/${deployAppName}/${deployAppName}.manifest" if [[ "$?" -eq 0 ]] then source ${deployHashHome}/${deployAppName}/${deployAppName}.manifest previousDeployRegion="" # logThis is a custom logging function which formats logs exactly how we want, we have …
1 linux  bash  shell  regex 

1
wgetを使用してディレクトリとサブディレクトリをダウンロードする
Webにフォルダービューのあるフォルダーがあります(http://example.com/folder1/folder2/) / folder2には、pdfファイルが含まれる複数のフォルダーがあります。wgetを使用して、すべてのサブフォルダーとファイルを含む/ folder2のすべてのコンテンツをssh経由でサーバーにダウンロードしたい。次のことを試しましたが、index.htmlとrobots.txtファイルのみを取得し続けています。 [root@myserver downloads]# wget -r --no-parent --reject "index.html*" http://www.example.com/folder1/folder2/ --2015-08-07 07:46:36-- http://www.example.com/folder1/folder2/ Resolving www.example.com... 192.168.1.1 Connecting to www.example.com|192.168.1.1|:80... connected. HTTP request sent, awaiting response... 200 OK Length: unspecified [text/html] Saving to: `www.example.com/folder1/folder2/index.html' [ <=> ] 4,874,325 138K/s in 37s 2015-08-07 07:47:42 (128 KB/s) - `www.example.com/folder1/folder2/index.html' saved [4874325] …
1 linux  bash  ssh  wget 

2
Unixがサブディレクトリからファイルを移動/削除する
現在の作業ディレクトリに複数のサブディレクトリがある場合、特定のファイルタイプのみ、または場合によってはそれらのディレクトリのすべてのコンテンツを作業ディレクトリに移動します。その後; 「rmdir *」それらの空のディレクトリまたは「rm -r」それらのディレクトリ(空でない場合) これを「検索」ユーティリティで行ってからパイプするべきではありません。「mv」への出力 (検索結果を作業ディレクトリに移動します)?もしそうなら、たとえば、私が渡す必要がある検索オプションは何ですか、またはサブディレクトリ内のファイルをrmまたはmvするためにどのような種類のコマンドを使用し、その後ディレクトリを削除する必要がありますか? この方法は、同じディレクトリ内で重複するファイル名を移動しても安全ですか?または、たとえばindex.htmlが多数ある場合、ファイルは上書きされますか これは、unix、mv、またはrmのいくつかのサブディレクトリから指定されたファイルタイプの基本的なタスクです。
1 linux  bash  unix  shell 

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