問題タブ [shell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unix - Unix シェル ファイル コピーのフォルダ構造の平坦化
UNIX bash シェル (具体的には Mac OS X Leopard) で、特定の拡張子を持つすべてのファイルをフォルダー階層 (サブディレクトリを含む) から同じ宛先フォルダー (サブフォルダーなし) にコピーする最も簡単な方法は何でしょうか?
明らかに、ソース階層に重複があるという問題があります。それらが上書きされてもかまいません。
例: 次の階層のすべての .txt ファイルをコピーする必要があります
「dest」という名前のフォルダーに移動して、次を取得します。
xml - UNIX端末を使用したXMLの解析
XML ファイルから任意のデータをすばやく抽出して、CSV 形式にする必要がある場合があります。Unix ターミナルでこれを行うためのベスト プラクティスは何ですか? いくつかのコード例が欲しいのですが、たとえば、次の問題を解決するにはどうすればよいですか?
XML 入力の例:
私の望ましいCSV出力:
bash - シェルスクリプトでsshをどのように使用しますか?
シェル スクリプトでsshコマンドを使用しようとすると、コマンドがそのまま残ります。シェルスクリプトでsshを使用する方法の例はありますか?
linux - bashですべてのstderrをリダイレクトするには?
対話型 bash ですべての stderr ストリームをリダイレクトする方法を探しています (理想的には、呼び出し元の親プロセスに)。
各コマンドに追加することで実行できる、個々のコマンドから stderr ストリームをリダイレクトしたくありません2> a_file
。
デフォルトでは、これらの stderr ストリームは対話型 bash の stdout にリダイレクトされます。stdout がエラー メッセージによって汚染されるのを防ぎ、それらを個別に処理できるようにするために、このインタラクティブな bash プロセスの stderr にそれらを取得したいと考えています。
何か案は?
私はまだ答えを見つけていません...しかし、おそらくそれは実際にはttyパラメーターです。stderr を処理するための tty/interactive shell の責任について何か知っている人はいますか?
user-interface - グラフィカル コマンド シェルはどこにありますか?
ターミナルとシェルは非常に強力ですが、特にそれらを最大限に活用するには、学習が複雑になる可能性があります。ユーザーを支援したり、より使いやすい方法で回答を表示したりする、より GUI ベースのコマンド シェルを知っている人はいますか? 私は IPython を知っていますが、正しい方向への一歩ではありますが、その構文でさえやや複雑です。
これに加えて、結果をグラフで表示することもできます。たとえば、ファイル サイズを円グラフにパイプできると便利だと思いませんか?
scripting - *nix コマンドで使用するための DOS ファイル名のエスケープ
sed で使用できるように DOS ファイル名をエスケープしたい。次のようなDOSバッチファイルがあります。
(注: -完全修飾パス名に%~f1
展開されます - )%1
C:\utils\MyFile.txt
%FILENAME%
バックスラッシュが次の文字をエスケープしているだけであることがわかりました。
それらがエスケープされるように、どうすればそれらを2倍にすることができますか?
(私は cygwin をインストールしているので、他の *nix コマンドを自由に使用してください)
解決
Jeremy と Alexandru Nedelcu の提案を組み合わせて | を使用する 私が持っているsedコマンドの区切り文字について
python - os.system() 呼び出しをエスケープするには?
os.system() を使用する場合、多くの場合、コマンドにパラメーターとして渡されるファイル名やその他の引数をエスケープする必要があります。これどうやってするの?できれば複数のオペレーティング システム/シェルで動作するものですが、特に bash で動作します。
私は現在次のことを行っていますが、これにはライブラリ関数、または少なくともよりエレガント/堅牢/効率的なオプションが必要であると確信しています:
編集:引用符を使用するという簡単な答えを受け入れましたが、なぜそれを考えなかったのかわかりません。' と " の動作が少し異なる Windows から来たからだと思います。
セキュリティに関しては、私は懸念を理解していますが、この場合、os.system() が提供する迅速で簡単な解決策に興味があり、文字列のソースはユーザーが生成したものではないか、少なくとも信頼できるユーザー (私)。
unix - シェルスクリプトでのコマンドライン引数の引用
次のシェルスクリプトは、引数のリストを取得し、UnixパスをWINE / Windowsパスに変換し、WINEで指定された実行可能ファイルを呼び出します。
ただし、コマンドライン引数の引用には問題があります。
ご了承ください:
- 実行可能ファイルへのパスは、一重引用符で囲まれていますが、最初のスペースで切り取られています。
- 最後のパスのリテラル「\t」はタブ文字に変換されています。
明らかに、引用符はシェルが意図した方法で解析されていません。これらのエラーを回避するにはどうすればよいですか?
編集:「\ t」は、2つのレベルの間接参照によって拡張されています。最初に、"$p"
(および/または)が;"$ARGS"
に拡張されています。Z:\tmp\smtlib3cee8b.smt
次に、\t
タブ文字に展開されます。これは(一見)同等です
これは
ではなく
更新:eval "$CMD"
トリックを行います。" \t
"問題はechoの障害のようです: "最初のオペランドが-nの場合、またはいずれかのオペランドに円記号('\')文字が含まれている場合、結果は実装定義です。" (のPOSIX仕様echo
)
mysql - Windows 上の MySQL シェル
MySQL へのコマンド ライン インターフェイスは、それ自体は完全に機能しますが、ローカル コピーを使用するときは、旧式の DOS ウィンドウを使用して操作する必要があります。より良いシェルを介してリダイレクトできる方法はありますか?
linux - Linux で CLI 専用ツールを使用してディスク使用率のグラフ/チャートを生成する
この質問では、誰かが Linux でディスクの使用状況を表示する方法を尋ねました。この cli-path をさらに一歩進めたいと思います...前の質問に対する合理的な回答のようなものから出力を取得し、そこからグラフ/チャートを生成するシェルスクリプトはどうですか (png 形式で出力)ファイルか何か)?これは、通常の質問で尋ねるには少し多すぎるコードかもしれませんが、誰かがすでにどこかにワンライナーを置いていると思います...