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

ファイルの操作:コピー、名前変更、検索、分析、アーカイブなど。ファイル内のテキストの操作については、/ text-processingを参照してください。ファイルファイルマネージャー(以前のNautilus)に関する質問については、/ nautilusを参照してください。

5
2つのフォルダーを比較し、その違いを3番目のフォルダーにコピーするにはどうすればよいですか?
次の3つのフォルダーがあります。 現在のフォルダーには、現在のファイルが含まれています 同じファイルの古いバージョンを含むフォルダold フォルダーの違い、これは単なる空のフォルダーです どのように比較するか、古いと現在とで異なる(あるいは全く新しい)しているファイルをコピー電流をに違い? 私はあらゆるところを検索しましたが、取り組むのは簡単なように思えますが、特定の例ではうまくいきません。ほとんどのソースはrsyncの使用を提案しているので、私は次のコマンドになりました。 rsync -ac --compare-dest=../old/ new/ difference/ ただし、これにより、すべてのファイルがnewからdifferenceにコピーされます(oldと同じファイルであっても)。 それが役立つ場合(コマンドが正常で、障害が他の場所にある場合)、これは私がこれをテストした方法です: 3つのフォルダーを作成しました。 私は中に異なる内容で複数のテキストファイルを作った古いです。 ファイルをoldからnewにコピーしました。 いくつかのファイルの内容を新規に変更し、いくつかの追加ファイルを追加しました。 上記のコマンドを実行し、結果の違いを確認しました。 私は過去数日間解決策を探していましたが、私はいくつかの助けを本当に感謝しています。必ずしもrsyncを使用する必要はありませんが、可能であれば、間違っていることを知りたいです。
23 files  rsync  diff  file-copy 


8
巨大なファイルの先頭と末尾に行を追加します
巨大なファイルの最初と最後に行を追加するシナリオがあります。 以下に示すように試しました。 最初の行の場合: sed -i '1i\'"$FirstLine" $Filename 最後の行: sed -i '$ a\'"$Lastline" $Filename しかし、このコマンドの問題は、ファイルの最初の行を追加し、ファイル全体を走査することです。最後の行については、再びファイル全体を走査し、最後の行を追加します。非常に大きなファイル(14GB)であるため、これには非常に長い時間がかかります。 ファイルを1回だけ読み取りながら、ファイルの先頭と末尾に行を追加するにはどうすればよいですか?

4
Linuxファイルシステムキャッシュから特定のファイルをドロップしますか?
Linuxファイルシステムキャッシュからすべてをドロップできることは知っていますが、特定のファイルを1つだけドロップする方法はありますか?または、ファイルがキャッシュされないようにしますか?または、書き込むファイルをキャッシュしないようにプロセスに指示しますか? 多くの小さなファイルを読み取り、大きなファイルを書き込むプロセスがあります。ディスクシークを回避するために小さなファイルをキャッシュに保持したいのですが、大きなファイルをキャッシュする必要はありません。

2
agを使用して特定の拡張子を持つファイル内のテキストを検索するにはどうすればよいですか?
私はag(Silver Searcher)バージョン0.31.0を使用しています。私は簡単にたくさんのファイルの中から文字列を探すことができます: localhost:workspace davea$ ag 'ftp' . しかし、特定の拡張子を持つファイルのみをスキャンしたい場合はどうすればよいですか?私はこれを試しました: localhost:workspace davea$ ag 'ftp' .java ERR: Error stat()ing: .java ERR: Error opening directory .java: No such file or directory しかし、上記のエラーが発生しました。
23 files  search  ag 


1
lsofを使用してファイルを継続的に監視する
lsofを継続的に動作させて、リアルタイムで開かれているすべてのファイルを監視する方法はありますか? プロセスの名前がわかりません。リストに必要なものが表示されるまで、lsofを一定期間継続して動作させます。
23 files  lsof 

3
ファイルの「変更」日付を変更するにはどうすればよいですか?
「変更」日付を変更するにはどうすればよいですか? $ touch -t 9901010000 test;stat test File: `test' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fe01h/65025d Inode: 11279017 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ x) Gid: ( 1000/ x) Access: 1999-01-01 00:00:00.000000000 +0100 Modify: 1999-01-01 00:00:00.000000000 +0100 **Change: 2012-04-08 19:26:56.061614473 +0200** Birth: -

5
LinuxでのO_DIRECTの使用
この質問がプログラマー指向すぎる場合は、お知らせください。Linux 2.6のopen()システムコールのO_DIRECTフラグに精通している人がいるのだろうか?Linusはその使用を軽んじていますが、高性能ファイル書き込みはその使用を示しているようです。現実世界での経験と推奨事項を知りたいです。 詳細:私が使用しているアプリケーションは独自のキャッシュを維持しており、その際に平均で5倍以上の高速化を実現しています。ファイルに書き込むとき、キャッシュの内容はファイルシステムのキャッシュに書き出される必要がありますが、これは冗長であり、パフォーマンスの問題と思われます。

6
非常に多数のファイルを正しい順序でまとめます
私は命名されている約15,000ファイル持ってfile_1.pdb、file_2.pdb実行してためにこれらの数千程度などI缶猫: cat file_{1..2000}.pdb >> file_all.pdb ただし、15,000個のファイルに対してこれを行うと、エラーが発生します -bash: /bin/cat: Argument list too long 私はこの問題を解決することを見ましたfind . -name xx -exec xxが、これはファイルが結合される順序を保持しません。どうすればこれを達成できますか?


1
ファイル名について、アンダースコアまたはダッシュはUnixファイル名でより一般的ですか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 名前に複数の単語を含むファイルに名前を付ける場合、Unixシステムでは、アンダースコア、キャメルケース、またはダッシュを使用して単語を区切るのが一般的ですか?
22 files  filenames 

5
キャラクターデバイスまたはキャラクタースペシャルファイルはどのように機能しますか?
キャラクタースペシャルファイルを理解しようとしています。ウィキペディアから、これらのファイルは、一度に1文字ずつデータを送信するデバイスの「インターフェースを提供する」ことを理解しています。私の理解では、システムはデバイスドライバーを直接呼び出すのではなく、何らかの方法でキャラクターデバイスを呼び出します。しかし、ファイルはこのインターフェースをどのように提供しますか?システムコールを変換する実行可能ファイルですか?誰かが何が起こっているのか説明できますか。
22 files  drivers 

7
fdupes -rdNより洗練された複製を削除する方法はありますか?
最近、多くの重複を削除する必要があります。3つまたは4つのファイルシステムをマージしていますが、そのスペースを経済的に使用したいです。最初fdupesは仕事に最適なツールのように見えましたが、次第に制限に直面しています。 コマンドを検討してくださいfdupes -rdN somedirectory/。これにより、somedirectoryのサブディレクトリ内のすべてのファイルのハッシュが作成されます。 そして、重複が見つかるとそれらを削除するため、すべてのコピーが1つだけになります。 しかし、保持somedirectory/subdirectory1/somefileしたいのですが、実際には4つの重複があり、プログラムが最初に重複の1つに遭遇した場合はどうなりますか?次に、を削除しますがsomedirectory/subdirectory1/somefile、これは望ましくありません。 どういうわけか、保持する複製を指定できるようにしたいと思います。そしてこれまでのところ、重複を処理するための標準プログラム(duff、FSLint)は、そのような動作の自動化を許可していないようです。私は自分で転がしたくないので、この質問をしているのはそのためです。 私は次のようなものを書きたいです killdupes -rdN --keep=filesin,somedirectories,separated,by,commas somedirectory/

2
ファイルがPOSIXで定義されたテキストファイルであるためには、どのような条件を満たす必要がありますか?
POSIXは、テキストファイルを次のように定義します。 0個以上の行に編成された文字を含むファイル。行にはNUL文字が含まれておらず、<newline>文字を含めて、長さが{LINE_MAX}バイトを超えることはできません。POSIX.1-2017はテキストファイルとバイナリファイルを区別しませんが(ISO C標準を参照)、多くのユーティリティは、テキストファイルを操作する場合にのみ予測可能または意味のある出力を生成します。このような制限がある標準ユーティリティは、STDINまたはINPUT FILESセクションで常に「テキストファイル」を指定します。 ソース:http : //pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_403 ただし、いくつか不明確なことがあります。 テキストファイルは通常のファイルである必要がありますか?上記の抜粋では、ファイルが通常のファイルでなければならないことを明示的に示していません 1つの文字と1つの文字のみ(つまり、改行で終わらない単一の文字)が含まれている場合、ファイルをテキストファイルと見なすことはできますか?この質問はきちんと聞こえるかもしれませんが、「1つ以上の文字」ではなく「文字」という言葉を使用しています。他の人は同意しないかもしれませんが、「1つ以上の文字」を意味する場合は、明示的に言う必要があると思います 上記の抜粋では、「行」を参照しています。名前に「空の行」、「表示行」、「不完全な行」、「行」という名前の行がある4つの定義が見つかりました。「空」、「表示」、「不完全」が省略されているため、「行」を意味すると推測するのか、またはこれらの定義の4つすべてが上記の抜粋の行と見なされているのですか? このテキストブロックの後に来るすべての質問は、「文字」が「1つ以上の文字」を意味するという推論に依存しています。 ファイルが空の場合、1つ以上の文字が含まれていないため、テキストファイルではないと推測できますか? このテキストブロックの後に来るすべての質問は、上記の抜粋では、行が「行」として定義され、名前に「行」を含む他の3つの定義は除外されるべきであるという推論に依存します: 「ゼロ行以上」の「ゼロ」は、改行で終わらない1つ以上の文字が含まれているファイルがテキストファイルと見なされることを意味しますか? 「ゼロ以上の行」とは、1つの「行」(0以上の文字と終了する改行)が登場すると、最後の行が「不完全な行」(1つ以上の非行ファイルの最後の改行文字)? 「なし[行なし]は、改行文字を含めて{LINE_MAX}バイトを超えることはできません」とは、テキストファイル内の特定の「行」で許可される文字数に制限があることを意味しますかUbuntu 18.04およびFreeBSD 11.1のLINE_MAXは「2048」ですか?
22 files  posix  text 

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