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

コンピュータファイルを格納するファイルシステム構造。

1
そのディレクトリに対する実行権限がない場合の「ls」と「ls -l」の違いは何ですか?
というディレクトリを作成し、folder実行権限を奪いました。 $ mkdir folder $ touch folder/innerFile $ mkdir folder/innerFolder $ chmod -x folder 今なら $ ls folder ファイルのリストを出力しますが、そうすると $ ls -l folder 私は得る ls: innerFile: Permission denied ls: innerFolder: Permission denied 何故ですか?


3
サブシェルを使用せずにシェルコマンド置換を実行することは可能ですか?
サブシェルを使用せずにコマンド置換を要求するシナリオがあります。私はこのような構成を持っています: pushd $(mktemp -d) 次に、一時ディレクトリを一度に終了して削除します。 rmdir $(popd) ただしpopd、ポップされたディレクトリが返されない(新しい現在の現在のディレクトリが返される)ため、およびサブシェルで実行されるため、これは機能しません。 何かのようなもの dirs -l -1 ; popd &> /dev/null ポップされたディレクトリを返しますが、次のようには使用できません。 rmdir $(dirs -l -1 ; popd &> /dev/null) これはpopdサブシェルにのみ影響するためです。必要なのは、これを実行する機能です。 rmdir { dirs -l -1 ; popd &> /dev/null; } しかし、それは無効な構文です。この効果を達成することは可能ですか? (注:一時ディレクトリを変数に保存できることはわかっています。そうする必要をなくし、プロセスの中で何か新しいことを学ぼうとしました!)
11 shell  directory 


2
`ln -d`が成功するファイルシステムはありますか?
lnのマンページから: -d, -F, --directory allow the superuser to attempt to hard link directories (note: will probably fail due to system restrictions, even for the superuser) これを実際に許可するファイルシステムドライバーはありますmount --bind <src> <dest>か、それとも唯一のオプションですか?または、この種の動作は、ファイルシステム固有のドライバーに到達する前にカーネルによってブロックされていますか? 注:私は実際にはどのマシンでもこれを実行するつもりはありません。

4
作業ディレクトリごとに履歴を保持する(シェルセッションごとに参照)
最新のシェルの履歴機能をパスにスコープする方法はありますか? 私の作業コンテキストは、ファイルシステム上のパスとして分割され、繰り返し発行されるコマンドなどのシェルアクティビティのパターンは、各「プロジェクト」で異なる傾向があります。履歴機能を現在のパス(またはサブパス)から発行されたコマンドにスコープできると便利です。

3
特定のサブディレクトリを除くすべてのファイルを、findで削除します。
aサブフォルダー内のすべてのファイルを除いて、フォルダー内でしばらくアクセスされなかったすべてのファイルを再帰的に削除したいb。 find a \( -name b -prune \) -o -type f -delete ただし、エラーメッセージが表示されます。 find:-deleteアクションは-depthを自動的にオンにしますが、-depthが有効な場合、-pruneは何もしません。とにかく続行したい場合は、明示的に-depthオプションを使用してください。 追加する-depthと、すべてのファイルbが含まれますが、これは発生してはなりません。 誰もがこれを機能させる安全な方法を知っていますか?
11 find  directory  rm 

5
内部に特定のファイル名を持つファイルがないすべてのディレクトリを一覧表示します
内部に特定のファイル名を持つファイルがないすべてのディレクトリを一覧表示するにはどうすればよいですか?たとえばこの木を与えられた / /a README file001 file002 /b README file001 /c file003 という名前のファイルがないディレクトリを一覧表示したいのですがREADME、この場合はディレクトリになり/cます。どうすればいいですか?例えば、を使用した構文は考えられませんfind。
11 files  directory 

4
プログラムでsshを使用してリモートディレクトリを作成する
シェルスクリプトを使用して、sshを使用してserverA-> serverBからリモートでディレクトリを作成するにはどうすればよいですか?create directoryコマンドをsshコマンドと一緒に渡すことはできますか?どうやって? ディレクトリがまだ存在しない場合は、基本的に日付に基づいてリモートでディレクトリを作成しようとしています(例:20110304)。
11 shell  ssh  directory 


10
ディレクトリ内のファイル数をカウントする最良の方法は何ですか?
ls一部のファンキーな文字(スペース\n、...)で壊れる可能性があるため、の出力の解析が危険な場合、ディレクトリ内のファイル数を知るための最良の方法は何ですか? 私は通常find、この解析を回避することに依存していますが、同様にfind mydir | wc -l、同じ理由で壊れます。 私は現在Solarisで作業していますが、さまざまなユニックスやさまざまなシェル間で可能な限り移植性のある答えを探しています。

3
NFSリモートがディレクトリをエクスポートしているかどうかを確認するにはどうすればよいですか?
私のスクリプトでは、ステータスのいくつかのレイヤーがあります。 リモートが利用可能です(ping) リモートNFSサービスがアクティブです リモートNFSが特定のディレクトリをエクスポートしています リモートNFSがマウントされている(マウント) (2)と(3)についてrcpinfoは、最善の策だと思います。(2)については、サブシェルを開始せずにクエリをNFSサービスに絞り込む方法を理解できません(これはこのアプリケーションでは受け入れられません)。(3)の場合、この情報がリモートで利用できるかどうかはわかりません(sshもちろん、ログインする必要はありません)。 私はRHEL 6に取り組んでおり、標準ディストリビューションに含まれていないプログラムにアクセスできません。
11 rhel  directory  nfs  remote 

3
現在のディレクトリを変更せずにサブディレクトリ内のシンボリックエイリアスファイル
サブディレクトリを移動せずに、1つのファイルをサブディレクトリ内の新しいファイルにシンボリックリンクするのは簡単なようです。しかし、構文についての何かは当惑し、私が期待するものに反しています。ここにテストケースがあります: mkdir temp cd temp mkdir deploy echo "Contents of the build file!" > deploy/resources.build.php ln -s deploy/resources.build.php deploy/resources.php cat deploy/resources.php #bad symlink これは壊れたシンボリックリンクを作成するだけです!ビルド環境のセットアップスクリプトでこれを実行しているので、可能な限り、現在の作業ディレクトリを変更しないようにします。 ln -s deploy/resources.build.php resources.php cat deploy/resources.php また、デプロイサブディレクトリではなく一時ディレクトリにシンボリックリンクを作成するため、機能しません。 cd deploy ln -s resources.build.php resources.php cd .. これは機能しますが、ディレクトリを変更せずに実行する方法を知りたいと思います。 次のような完全パスを使用します。 /home/whatever/src/project/temp/stuff/temp/deploy/resources.build.php 機能しますが、特にプロジェクト環境がビルド間で異なる可能性があるビルド環境などでは、不可解でやや実用的ではありません。 サブディレクトリに移動したりサブディレクトリから移動したりせずに、サブディレクトリ内の2つのファイル間にシンボリックリンクを作成し、新しいファイルに「エイリアス」に新しい名前を付けるにはどうすればよいですか。
11 directory  symlink  ln 

4
再帰ディレクトリから特定の名前のフォルダーを抽出し、他のフォルダーを削除する方法は?
私は、zipファイルを解凍して得られる次の種類のディレクトリツリーを持っています。 X - > Y - > Z - > 実行 - HERE>ファイルとディレクトリ したがって、4つのディレクトリがあり、そのうち3つにはファイル(x、y、z)がなく、1つのサブディレクトリしか含まれていません。また、「run」という名前の、興味のあるディレクトリがあります。 「run」ディレクトリ自体(その中のすべてを含む)を、解凍した「ルート」の場所(つまり、「x」はあるが「x」内ではない場所)に移動したい。 仮定:「run」という名前のフォルダーが存在しますが、そこに到達するために「cd」する必要のあるディレクトリの数はわかりません(3(x、y、z)である可能性があります)。も不明であり、x、y、zなどである必要はありません)。 どうすればこれを達成できますか?私はこの質問の多くのバリエーションを試しましたが、すべて失敗しました。

2
ハードリンクの数が0になると、ディレクトリは削除されますか?
ハードリンクの数が0になると、ディレクトリは削除されますか? のため、ディレクトリには常にハードリンクの数として少なくとも2があり.ます。rm -rディレクトリの場合、ハードリンクの数を1から2に2から0に減らしますか? ディレクトリのハードリンクの数を1にすることはできますか? ありがとう。
10 directory 

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