2010-01-04 4 views
2

Я попытался запустить следующий сценарий bash на своем интернет-планшете (Nokia N810 работает на Maemo Linux). Однако, похоже, он не работает, и я не знаю, что не так с этим скриптом (он работает на моей системе Ubuntu, если я меняю каталоги). Было бы здорово получить некоторые отзывы об этом или подобном опыте этой проблемы. Благодарю.Запуск bash shell в Maemo

WORKING="/home/user/.gpe" 
SVNPATH="/media/mmc1/gpe/" 

cp calendar categories contacts todo $WORKING 

ответ

1

Что на самом деле происходит при запуске сценария? Это полезно, если вы включаете детали сообщений об ошибках или поведения, которые отличаются от ожидаемых и каким образом.

Если $ WORKING содержит имя скрытого или нет каталога, то cp должен скопировать эти четыре файла в него. Затем ls -l /home/user/.gpe должен показывать их, а также все, что там есть, независимо от того, является ли оно «скрытым».

Кстати, начальная точка в имени файла или каталога не действительно «спрятать» запись, это просто, что ls и echo * и подобные команды не показывают их, в то время как это сделать:

ls -la 
ls -d .* 
ls -d {.*,*} 
echo .* 
echo {.*,*} 
+0

Первоначально я не видел сообщений об ошибках от выполнения моего сценария. Я могу включить ваши предложения и дать им попробовать. Я дам вам знать, как хорошо это работает, как только я внес изменения. – stanigator

1

Баш cp команда может скопировать несколько источников в одно место назначения, если это каталог.

Существует ли каталог /home/user/.gpe?

Имейте в виду, что ведущая точка в имени может сделать его скрытые если вы не используете ls -a

Я попробовал свои команды в Cygwin:

Но я использовал .gpe вместо /home/user/.gpe

Я создал файл touch calendar categories contacts todo для создания файлов.

Он работал нормально.

+0

Рабочий каталог в это время SVNPATH = "/ media/mmc1/gpe /", поэтому нет смысла пытаться SVNPATH. /home/user/.gpe существует, но это скрытый файл. – stanigator

+0

Но для 'cp', чтобы работать, как вы хотите, $ WORKING должен быть каталогом. Это 'cp file1 file2 file3 file4 directory'. Если '.gpe' является (скрытым) файлом, он не будет работать. – pavium

+0

Есть ли способ сделать эту работу? Я хочу заставить его работать. Есть ли простой способ сделать .gpe не скрытый каталог? – stanigator

1

Если это ваш сценарий, ему не хватает двух. возможны три, вещи:

  • shebang линии, такие как #!/bin/sh при пуске
  • Использование $ SVNPATH. Вероятно, вы хотите cd $SVNPATH перед командой cp. Ваш скрипт не должен считать текущий рабочий каталог правильным.
  • Возможно разрешение на выполнение сценария: chmod a+x script
1

У Вас уже есть каталог /home/user/.gpe подарок? А также попробуйте добавить параметр -R, чтобы каталоги были скопированы рекурсивно.