1
PSFTPのdir
コマンドで生成されたログファイルを解析するために正規表現を使用しようとしています。PSFTP RegExpを使用してDirコマンドからファイル名を取得する方法
例のDir例1
drwxr-xr-x 1 0 0 0 Jun 21 13:13 .
drwxr-xr-x 1 0 0 0 Jun 21 13:13 ..
-rw-r--r-- 1 0 0 897 Jun 20 15:02 EQA.txt
-rw-r--r-- 1 0 0 897 Jun 20 15:06 EQA1.txt
-rw-r--r-- 1 0 0 897 Jun 16 20:41 Test.txt
-rw-r--r-- 1 0 0 897 Jun 16 21:46 Test1.txt
-rw-r--r-- 1 0 0 897 Jun 21 13:13 Test4.txt
-rw-r--r-- 1 0 0 913 May 31 18:01 test.123456789.txt
psftp> bye
例のDir例2
ファイルが古いより6ヶ月であるか、将来にあれば、私は、ネットの周りに見つけたものからそうdrwx------ 2 MikePC-apps users 4096 Apr 5 2016 .
drwx------ 4 MikePC-apps users 4096 Jan 20 2016 ..
-rw-r--r-- 1 MikePC-apps users 82 Apr 5 2016 test.txt.$01
-rw-r--r-- 1 MikePC-apps users 82 Aug 10 2016 test.txt.$02
-rw-r--r-- 1 MikePC-apps users 82 Aug 10 2016 test.txt.asc
-rw-r--r-- 1 MikePC-apps users 82 Aug 10 2016 test1.txt.$01
-rw-r--r-- 1 MikePC-apps users 1927 Apr 4 2016 test.zip
、年その日の時間の代わりに表示されます。
たとえば、正規表現:/d/d/s .*.*.*
を使用して、ファイル名を取得するsubstring関数を使用しています。
しかし、2番目の例にアプローチする方法はわかりません。 dir
コマンドのパラメータがタイムスタンプを含むようにしたいので、同じ正規表現を使用することができます。あるいは、両方の例を扱える別の正規表現があるかもしれません。
多くの感謝!
ソリューションのおかげで、 を私は文字列のパターンに '= @" ^パターンを変更する( 'ATTRIB' [^ \ s]は+?)を\ S +( 'リンク'? \ s +(? '' [^ \ s] +)\ s +(? ') これはファイル名として 'test1.txt。$ 01'にも含まれています。 ありがとう – Bonobo
$ 01はファイル名の一部です – jdweng
正規表現 '([^ \ s] +)\ s +([^ \ s] +)\ s +([^ \ s] [Regexr](http:// regexr)で、\ s +([^ \ s] +)\ s +([^ \ s] +)\ s +(。 com /)、[^]のため$で停止しました。 文字列がすでに文に分割されているため、パターンの最後に$が削除されました – Bonobo