Я бы рекомендовал использовать zsh
's zmv
здесь, чтобы защититься от потенциальных конфликтов (, например, в текущем каталоге )есть файлы file.jpeg1
и file.jpeg2
перед выполнением . ] любое переименовать.
Вzsh
:
autoload zmv # best in ~/.zshrc
zmv -n '(*.jpeg)<->' '$1'
Где<->
(<x-y>
диапазон чисел, совпадающий здесь без границ, )соответствует любой последовательности десятичных цифр, такой же, как [0-9]##
.
(снять -n
для работы всухую -при удовлетворительном состоянии ).
Невозможно обойти оболочку входа по замыслу. Вы можете установить учетную запись SSH, оболочка которой ограничена (, например. ограниченная оболочка, как в rsh/rksh/rbash/…, или оболочка, которая разрешает только определенный протокол, такой как оболочка rssh или git -). Клиент не может указать другую оболочку.
Чтобы запустить код в другой оболочке, вы должны заставить свою оболочку входа запускать эту оболочку и передавать код во внутреннюю оболочку. Это ничем не отличается от того, что вам нужно сделать для запуска интерпретируемого кода на каком-либо другом языке, таком как perl, python и т. д. Позаботьтесь о правильном цитировании. Если вам не нужен стандартный ввод, передайте сценарий на стандартный ввод, чтобы вам не требовалось вложенных кавычек.
В базе данных пользователей может быть несколько записей для одной и той же учетной записи. «Та же учетная запись» означает тот же идентификатор пользователя. Записи должны иметь разные имена пользователей и могут иметь разные пароли, разные оболочки и т. д. См. Можно ли дать учетной записи пользователя несколько паролей? . Имейте в виду, что это не очень надежно, потому что некоторые программы выполняют поиск по идентификатору пользователя (, а не по имени пользователя в переменной среды $USER
, для которой установлено имя, выбранное пользователем при входе в систему ).
Если вы хотите использовать zsh для интерактивного использования, но оболочку в стиле Bourne -для SSH,вы можете делать то же, что и я :Я установил для своей оболочки входа в систему значение/bin/sh
(или что-то еще, что требуется для наличия оболочки POSIX ), и у меня есть (более сложная версия)export SHELL=/bin/zsh; exec $SHELL
в моем .profile
.