2016-04-01 15 views
1

Yüklerimi ve ortamı depoladığım ve yönetdiğim, ancak bazen küçük dosyaları bilgisayarıma aktarmam gereken bir başsız dosya sunucum var (Mac, bash kabuğunu kullanarak). Sorun, bazı dosyaların daha kullanıcı dostu isimlere sahip olması ve genellikle bunların içinde boşluk olması ve sunucumda kurduğum dosya dizini hiyerarşisinde gömülmesidir.ssh oturumundan localhost'a SCP dosyası

Yerel makinemden scp kullanırken, sekme tamamlamam var, bu yüzden tüm yolu ve adı kaçan boşluklarla el ile yazmam gerekiyor. Ben sunucuya ssh ilk komut Ne zaman:

scp /home/me/files/file\ name\ with\ spaces.png [email protected]:/Users/Me/MyDirectory 

hata ile başarısız düzgün benim yerel makine kullanıcı şifresini girerek olduğum halde "İzin engellendi, lütfen tekrar deneyin".

Dosya aktarımı için daha iyi bir araç olabileceği söylendiği için biraz sftp10 öğrendim. Ancak, yardımcı program güncelliğini yitirmiş ve hala sunucuya bir bağlantı kurduktan sonra sekme tamamlama yok (Terminalimde Tab tuşlarına basarken sadece bir sekme karakteri alıyorum).

Sorum şu: Bu, Mac'ten scp kullanırken sekmenin tamamlanmasına izin vermek için ne yapabilirim? Ya da bir ssh oturumunda scp için yanlış sözdizimi kullanıyorum ve düzeltmem gereken bu komutta bir şey var mı? Ya da, bir sunucu üzerinde sekme tamamlama sunacak sftp dışında bir (daha yeni? Daha yeni?) Araç var mı? Son olarak, eğer bu sorunların hiçbiri basit çözümlere sahip değilse, bu komutlardan herhangi biriyle daha iyi bir sekme tamamlamayı kolaylaştıracak bir paket (örneğin Homebrew veya benzeri bir tamamlama paketi) kurabilir miyim?

+0

3B Yazdırmayı seviyor musunuz? Check out [SE üzerinde 3D Baskı] (http://3dprinting.stackexchange.com/): D –

+0

@MattClark Evet, geçen yıl bir RepRap i3 ürettim. Bahşiş için teşekkürler, kesinlikle kontrol edeceğim! – APaul

cevap

2

Bazı yanlış scp ing gibi bana benziyor.

Bu

Çok yakın komuta

scp ./localFile.txt [email protected]:/remoteFile.txt 

biçimi olmakla birlikte, size remoteHost olmalıdır localhost set var.

localhost

Şu anda üzerinde makineye giderir addır - böylece iş akışı içinde, sen ssh olan bir makineye ing ve o zaman zaten ssh d içine aynı makineye dosya scp çalışıyor.

Yapmanız gereken şey, bağlanmaya çalıştığınız bilgisayarın IP adresini veya fiziksel ana bilgisayar adını öğrenir ve bunu kullanır. sizin için mac giriş kimlik bilgilerini kullanarak, ama bilmeden başsız makineye tekrar giriş çalışıyorduk çünkü seni inkar izni elde edildi sebebini varsayıyorum

scp ./localFile.txt [email protected]:/remoteFile.txt 
# where 192.168.1.100 would be the IP of your Mac 

oldu.

+0

Ah Şimdi 'localhost' hakkında aptalca hissediyorum. Ancak, yerel IP'mi bulduktan sonra 192.168.1.xxx 'e sabitlediğimde, hatayı alıyorum' ssh: ana bilgisayara bağlan 192.168.1.xxx port 22: Bağlantı reddedildi'. Mac'imde 'sshd' yok ('ps' yi aramak için kullandıktan sonra), fakat buradan nereye gideceğime emin değilim ... – APaul

+1

Mac'inize 'sshd' yüklemeniz gerektiği gibi geliyor: p –

+1

^Ha. Bu yapardı. Gelecek kuşak için 'sshd' 'yi kurmanıza gerek yok: Mac'te Sistem Tercihleri> Paylaşımda Uzaktan Girişleri etkinleştirmeniz yeterlidir. – APaul

İlgili konular