Как передать переменную в sftp?

По умолчанию файлы и каталоги, начинающиеся с . скрыты от просмотра. Стандартные команды, такие как ls и подстановки оболочки, такие как * , не будут соответствовать им.

Для ls вы можете показать точечных файлов с помощью -a (или -A , чтобы скрыть . ) и .. ).

Так, например:

$ ls
$ touch foo
$ touch .bar
$ mkdir .baz
$ ls
foo
$ ls -a     
.  ..  .bar  .baz  foo
$ ls -A     
.bar  .baz  foo

Итак, теперь, когда вы сделали mv ssh .ssh , могло произойти одно из двух:

  1. Если бы .ssh не существовало до этого вы делали именно то, что хотели. Вы можете выполнить ls -a и увидеть это.
  2. Если .ssh действительно уже существует, вы переименовали его в .ssh / ssh .

В обоих случаях вы можете выполнить ls -a .ssh

. Вы видите файлы some-machine и some-machine.pub , затем вы сделали то, что Вы хотели; вы были в случае 1.

Если вместо этого вы видите ssh (возможно, среди любых файлов, которые были там ранее), это означает, что вы были в случае 2. Вы можете исправить это с помощью:

mv .ssh/ssh .
mv ssh/* .ssh/.
rmdir ssh
1
10.09.2015, 20:22
0 ответов

Теги

Похожие вопросы