問題タブ [pwd]
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.
bash - Bash と Tmux の両方で、ウィンドウのタイトル バーに $PWD
ウィンドウのタイトル バーに PWD を表示したい。私の.bashrc
中には、Bashのトリックを行うように見えるこれがあります:
ただし、Tmux を使用すると、Tmux 内で移動した現在のディレクトリではなく、Tmux を起動したディレクトリがウィンドウに表示されます。
以下では、 で Tmux を起動し~
、 に移動し~/Downloads
ます。タイトル バーは引き続き表示されます~
。~/Downloads
その背後には、 Bash だけを使用してナビゲートするウィンドウがあります。それは私が欲しいものを示しています:
うまくいかなかった私がすでに試したことは次のとおりです。
powershell - Windows PowerShell の「pwd」の置き換え
コマンドを使用するUnixスクリプトがあります
Windows Power シェル スクリプトでこれを置き換えるのに適したものは何ですか?
unix - 現在の作業ディレクトリを新しい場所に移動した後の pwd 出力
なぜこれが起こるのか、そして「pwd」についての誤解について一般的な質問があります。
ディレクトリ /test から開始すると、その中に /test/folder1 があります。
フォルダ 1 の内容: file1.txt
2 つの別々のターミナルで「cd /test」を実行し、「ls」を実行して、両方のターミナルの出力として folder1 を検出します。
端末1で「cd folder1」を実行します。ターミナル 2 は /test のままです。
次に、ターミナル 2 で「mv folder1 folder2」を実行し、「ls」を実行すると、出力として folder2 が取得されます。私たちのMVが成功したことを明確に示しています。
ただし、ターミナル 1 (/test/folder1 にありました) 内で「pwd」を実行すると、出力は /test/folder1 のままです。つまり、フォルダを /test/folder2 に移動したことを反映していません。
これはなぜですか?file1.txt を編集すると、同じファイルを指しているはずのファイル システム内のポインターに過ぎない理由が理解できます。実際、各端末でファイルを変更し、他の端末で編集内容を確認できるのと同じです。しかし、「pwd」コマンドがそのディレクトリへの実際のパスを反映しなくなったのはなぜですか?
ありがとう!
pwd - xv6 で iget() が隠されている理由
Unix バージョン 6 の最新の実装であるxv6で少し遊んでいます。
私の最初のハックでは、単純な syscall を実装したかったのgetcwd
ですが、どのレベルの抽象化を使用すればよいかについて少し迷っています。
struct file
インターフェイスを使用する必要がありますか?- それとも
struct inode
インターフェイス? - 重要なのは、純粋にユーザーランドに実装することさえできるようです。
struct inode
私は操作でそれを実装し始めました。私の素朴な考えは、 を取得しproc->cwd
、次にreadi()
その 2 番目のエントリ ( ..
) を取得し、それをスキャンして前inum
の を取得する、というように、ルートに到達するまで再帰的に繰り返すというものでした。
パフォーマンスはあまり高くないようですが、最初のハックには適しています。
私の問題は、 s で取得した sからfs.c:iget()
a を取得する必要があることです。私はそれが static で宣言されていないことに気付きましたが、これは私を少し悩ませますが、その理由を見つけることができません。struct inode
inum
dirent
iget()
fs.c
defs.h
これが私の質問です。iget()
カーネルの残りの部分から故意に隠されているのはなぜですか?
java - Runtime.getRuntime().exec 呼び出し Linux バッチ ファイルがその物理ディレクトリを見つけられなかった場合
私はJavaアプリケーションを持っています.Runtime.getRuntime().execを使用してバッチファイルを呼び出します.Runtime.getRuntime().execを使用してLinuxバッチファイルを呼び出すと、バッチファイルは独自のディレクトリを見つけることができませんでした. バッチ ファイルで pwd コマンドを使用していますが、アプリケーション パスが返されます。バッチファイル自体からの物理パスが必要です。これどうやってするの?