yum install curl
Я получаю ошибку, которой не может быть найдена конфетка команды
Вы root
? Возможно что Ваш $PATH
не содержит /sbin:/usr/sbin
? Попробовать /sbin/yum
и /usr/sbin/yum
удостоверяться, что это не a $PATH
проблема.
Я не эксперт CentOS, но если Вы на самом деле работаете как root
, и yum
действительно не установлен и работа, затем Ваша система может быть серьезно повреждена.Насколько мне известно, yum
диспетчер пакетов по умолчанию CentOS и должен абсолютно оба существовать и работать.
~/git/usr/bin/git
Это - очень странный путь. Похоже, что Вы вручную извлекли git
пакет в Ваш корневой каталог?
error while loading shared libraries: libcurl.so.3
Ну, при извлечении пакета вручную он, вероятно, теперь отсутствует curl
библиотека, что git
пакет зависит от. Вы могли попытаться извлечь эту библиотеку также, но просто поместить ее в Ваш корневой каталог волшебно не заставит ее работать... необходимо будет, вероятно, играть с $LD_LIBRARY_PATH
заставить это работать, который, по моему опыту, не очень легок.
Если можно добраться yum
работа и затем использует его для установки 'пакета мерзавца правильно, это решило бы эту проблему для Вас.
Используйте скрипт, чтобы избежать путаницы в команде с вопросами кавычек.
Он более чистый, более управляемый и выглядит лучше :)!
Например, просто сделайте так:
echo "Enter source file"
read src_file
ssh user@server 'bash -s' < /path/to/local_script.sh "$src_file"
Содержимое local_script.sh
:
#!/bin/bash
src_file="$1"
src_size =`ls -latr $src_file | awk '{ print $5 }'`
echo "The source file size is $src_size "
Не забудьте добавить путь к вашему local_script.sh
:)
Вы не можете вложить двойные кавычки внутрь других двойных кавычек без выполнения некоторого экранирования - и, помещая черные метки внутрь двойных кавычек, они вычисляются на локальной машине, а не на удалённом компьютере.
Что-то более похожее должно делать то, что вы пытаетесь сделать:
ssh user@server 'echo "Enter file: "; read src_file; echo "Enter path: "; read path; cd $path; src_size=`ls -latr $src_file | awk "{ print \$5 }"`; echo "The source file size is $src_size;"'
Обратите внимание, что мне нужно было изменить '{ распечатать $5 }'
на "{ распечатать \$5 }"
, экранируя $
, потому что теперь он внутри двойных кавычек, а не одинарных, и я не хочу, чтобы $5
интерпретировался оболочкой командной строки.