ssh server ls /var/lib/edumate/backup/weekly/*DBB*
ファイルを返す
/var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
ただし、ssh server ls /data/backup/weekly/*DBB*
マウントリンクディレクトリの内容を返します。
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120513020022.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120520020018.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120527020019.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120603020028.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120710120854.001
/data
他のパーティションの場所
/dev/sdb2 on /data type ext3 (rw,acl,user_xattr)
バックアップはシンボリックリンクです。/data/backup
lrwxrwxrwx 1 root root 12 Jul 10 14:27 backup -> /data/backup/
もちろん、インストール/リンクされたディレクトリでファイルのリストを探しています。解決策とは何ですかどのように/var/lib/edumate/backup
使用しますか?ls
リンクされたものの代わりに?scp
同じように行動しますか?
答え1
私の推測では、実行中のクライアントシステムにssh
というディレクトリもあるということです/var/lib/edumate/backup/weekly
。これを実行すると、クライアントシステムのディレクトリには1つのファイルしか含まれません。しかし、ここにはあなたが期待するすべてのファイルが含まれています。
何が起こっているのかは、サーバーではなくクライアントシステムでワイルドカード一致が発生することです。当時、おそらくファイルが1つしかなかったでしょう。したがって、サーバーがコマンドから受信する内容は次のとおりです。
ls /var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
今後この問題を回避するには、引用符を使用してコマンドを実行してください。例:
ssh server ls "/var/lib/edumate/backup/weekly/*DBB*"
その後、ワイルドカード文字はクライアントシステムのシェルによって拡張されずにサーバーに渡されます。