問題タブ [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.
shell - Tornado / VXWorks シェル出力をリダイレクトするにはどうすればよいですか?
最近、Tornado 2 のシェルを使用して、キットで何が起こっているかをデバッグする組み込み C/C++ プロジェクトに取り組んでいます。このアプローチの唯一の問題は、複雑なシステムであり、その結果、かなりの量の出力が得られることです。Tornado は、新しい情報が到着するたびに「便利に」ウィンドウをスクロールします。つまり、エラーを見つけた場合、サイトからすぐに消えて見えなくなります。上にスクロールして見るたびに、システムはより多くの情報を追加するため、それを表示する唯一の方法は、ハードウェアを取り外すことです.
Tornado からの出力をリダイレクトする方法を誰かが持っているかどうか知りたいですか?
受信情報にフィルターを適用できるように、小さな python アプリからすべてをログに記録する方法があることを期待していました。Tornado プロセスに接続しようとしましたが、情報を含むウィンドウは標準の CEditCtrl ではないため、そのようにテキストを抽出することは行き止まりでした。
アイデアはありますか?
[編集] Tornado 2.1.0 しか実行しておらず、より新しいバージョンへのアップグレードは私の手に負えないことを述べておくべきでした。
[Edit2] Tornado で問題となっているウィンドウは、WinID によると「AfxFrameOrView42」です。
macos - Finder の「圧縮」メニュー項目と同じ形式の zip ファイルを作成する方法は?
Mac OS X では、Finder からいくつかのファイルを選択し、コンテキスト メニューまたは [ファイル] メニューから [圧縮] を選択して、zip アーカイブを作成できます。zip
残念ながら、結果のファイルは、コマンド (デフォルト オプションを使用)によって作成されたアーカイブと同一ではありません。
zip
この区別は、コマンドで作成されたアーカイブを受け入れない Apple が運営する少なくとも 1 つのサービスにとって重要です。手動でアーカイブを作成する必要があるため、リリース ビルド プロセスを完全に自動化できません。
シェル スクリプト内で正しい形式の zip アーカイブを作成するにはどうすればよいですか?
ditto
編集: この質問をずっと前に書いて以来、との主な違いはzip
シンボリック リンクの処理方法であることがわかりました。アプリ バンドル内のコード署名にはシンボリック リンクが含まれているため、リンクとして保存し、保存する必要はありません。通常のファイルとして。ditto
デフォルトではこれを行いますが、zip
しません (オプション-y
が必要です)。
shell - 最新の便利なPerlワンライナー(またはPerlを含むパイプ)は何ですか?
ワンライナーは次のようにする必要があります。
- 現実の問題を解決する
- 広範に不可解ではない(理解しやすく、再現しやすいものにする必要があります)
- それを書くのにかかる時間の価値があります(あまり賢くないはずです)
実用的なヒントとコツを探しています(の補足例perldoc perlrun
)。
javascript - Python を置き換える Javascript インタープリター
素早い動的型付け言語に関して言えば、特に Actionscript (flash) と同じ構文を使用するため、Web プロジェクトで頻繁に Javascript を使用しているため、Javascript が本当に好きになり始めています。
これはシェル スクリプトにとって理想的な言語であり、サイトのフロントエンドとバックエンドからコードを移動しやすくなり、python の奇妙な構文が少なくなります。
簡単にインストールできる優れた JavaScript インタープリターはありますか (Java ベースのものがあることは知っていますが、それは使用するすべての Java をインストールすることを意味します)。
iis - Powershell を使用して IIS ログにアクセスしますか?
PowerShell を使用して、レジストリなどをドライブ文字にすることができます。PowerShell には、他のオブジェクトをこのように処理する他のオブジェクトがあります。この方法で IIS ログにアクセスするためのコマンドレットを知っている人はいますか?
unix - コマンドがシェルモードでエディターを開こうとしたときに Emacs バッファーを開く
私は Emacs のシェル モードを使用するのが好きですが、いくつか欠点があります。そのうちの 1 つは、シェル コマンドがエディターを起動しようとしたときに、新しいバッファーを開くほど賢くないということです。たとえば、環境変数をにVISUAL
設定するvim
と、から次のようになりますsvn propedit
。
(表現から見分けるのは難しいかもしれませんが、それは恐ろしく醜い混乱です。)
にVISUAL
設定すると"emacs -nw"
、私は得る
( VISUAL
set を justemacs
に設定すると機能しますが、端末セッション内ではなく、Emacs X ウィンドウ内からのみ機能します。)
コマンド ライン プロセスに代わってシェル モードで正しいことを実行し、新しいバッファを開く方法はありますか?
windows - C / C ++プログラムはどのようにしてそれ自体をバックグラウンドに置くことができますか?
コマンドラインから起動された実行中のCまたはC++プログラムをバックグラウンドに置くための最良の方法は何ですか?これは、ユーザーがコマンドの最後に「&」を付けてUNIXシェルから起動した場合と同じです。(ただし、ユーザーは必要ありませんでした。)これはGUIアプリであり、シェルI / Oを必要としないため、起動後にシェルを拘束する理由はありません。しかし、シェルコマンドの起動を「&」なしで(またはWindowsで)自動バックグラウンド化する必要があります。
理想的には、Linux、OS X、およびWindowsのいずれでも機能するソリューションが必要です。(または、#ifdefで選択できる個別のソリューション。)これは、実行の途中ではなく、実行の最初に実行する必要があると想定してもかまいません。
1つの解決策は、メインプログラムを、実際のバイナリを起動するスクリプトにして、慎重にバックグラウンドに配置することです。しかし、これらの結合されたシェル/バイナリペアが必要なのは満足のいくものではないようです。
別の解決策は、同じコマンドライン引数を使用して、実行された別のバージョン('system'またはCreateProcessを使用)をすぐに起動することですが、子をバックグラウンドに置き、親を終了させます。しかし、これは、それ自体をバックグラウンドに置くプロセスと比較すると、不格好に思えます。
いくつかの回答の後に編集:はい、fork()(またはsystem()、またはWindowsのCreateProcess)は、これを行うための1つの方法であり、元の質問で示唆しました。ただし、これらのソリューションはすべて、バックグラウンドで実行される2番目のプロセスを作成してから、元のプロセスを終了します。EXISTINGプロセスをバックグラウンドに置く方法があるかどうか疑問に思いました。1つの違いは、アプリがプロセスIDを記録したスクリプトから起動された場合(おそらく後で強制終了するなどの目的で)、新しくフォークまたは作成されたプロセスは異なるIDを持つため、起動スクリプトで制御できないことです。あなたは私が何をしているのかわかります。
編集#2:
fork()は、OS Xの適切なソリューションではありません。「fork」のマニュアルページには、特定のフレームワークまたはライブラリが使用されている場合は安全ではないと記載されています。試してみましたが、実行時にアプリが大声で文句を言います。「プロセスが分岐し、このCoreFoundation機能を安全に使用できません。exec()を実行する必要があります。」
私はdaemon()に興味をそそられましたが、OS Xで試してみると同じエラーメッセージが表示されたので、fork()の単なるラッパーであり、同じ制限があると思います。
OS Xの中道政治を失礼します、それはちょうど今私の目の前のシステムです。しかし、私は確かに3つのプラットフォームすべてに対する解決策を探しています。
python - この Bash コマンドを純粋な Python で表現する方法
Python に変換できなかった便利な Bash スクリプトに次の行があります。「a」は、アーカイブするファイルのユーザー入力日数です。
私は、最も一般的なクロスプラットフォーム要素の os.name と getpass.getuser に精通しています。~/podcasts/current に相当するすべてのファイルの完全な名前のリストを生成するこの関数もあります。
まず、それを行うためのより良い方法があるはずです。どんな提案も歓迎します。どちらの方法でも、たとえば、Windows では "AllFiles('/users/me/music/itunes/itunes music/podcasts')" で関連するリストが表示されます。おそらく、このリストを調べて os.stat(list_member).st_mtime を呼び出し、特定の日数より古いすべてのものをアーカイブに移動できるはずです。私はそのビットに少し立ち往生しています。
もちろん、bash コマンドの簡潔さを備えたものはすべて照明にもなります。
bash - シェルスクリプトを使用して、2つの異なるディレクトリにある同じ名前のファイルを比較する方法
SVNの使用に移る前は、/develop/
ディレクトリを保持し、そこでファイルを編集およびテストしてから、それらを/main/
ディレクトリに移動するだけでプロジェクトを管理していました。SVNに移行することを決めたとき、ディレクトリが実際に同期していることを確認する必要がありました。
では、2つの異なるディレクトリにある同じ名前のファイルを再帰的に比較するシェルスクリプト[bash]を作成する良い方法は何でしょうか。
注:上記で使用されているディレクトリー名は、サンプルのみです。コードをトップレベルに保存することはお勧めしません:)。
php - PHP スクリプトを外部エディタにエスケープし、後で戻るにはどうすればよいですか?
具体的には、特定の時点でユーザーからの入力を必要とする PHP コマンドライン スクリプトがあります。外部エディター (vi など) を実行し、エディターの実行が終了するのを待ってからスクリプトを再開できるようにしたいと考えています。
私の基本的なアイデアは、一時ファイルを使用して編集を行い、後でファイルの内容を取得することでした。次のようなもの:
これは PHP コマンドライン スクリプトからは不可能だと思われますが、同じ効果を得るために使用できる何らかのシェル スクリプト トリックがあることを期待しています。
他のスクリプト言語でこれを実現する方法についての提案も大歓迎です。