run bash не работает команда alias в zsh

Я использую zsh в centos. И я хочу запустить некоторый сценарий оболочки. Как это.

script.sh

#!/bin/sh # something .. source ./aliases-file.sh 

aliases-file.sh

 alias test=ls alias test2=cat 

Я запустил ./script.sh , псевдоним не был применен к текущему сеансу. как я могу это работать?

  • получение владельца папки с командой if
  • Разархивировать определенные файлы из нескольких ZIP-файлов
  • Попросите пользователя войти в систему под учетной записью root при запуске сценария оболочки
  • Как добавить псевдоним для моего pwd в существующий файл?
  • Как я могу запустить `watch` в качестве фоновой работы?
  • Shell Script - оптимизация Awk
  • cvs auto setenv и логин без повторного ввода пароля
  • Многосторонняя двусторонняя связь отдельных программ
  • One Solution collect form web for “run bash не работает команда alias в zsh”

    Когда вы запускаете script.sh он выполняется в подоболочке, и ваши псевдонимы не будут распространяться до вызывающей оболочки (или текущей сессии, когда вы ссылаетесь на нее). Вам нужно самому source script.sh: source script.sh . Это заставит команды запускаться в вашей текущей оболочке, и псевдонимы станут видимыми.

    Сторона примечания: для соображений переносимости вы должны рассмотреть возможность использования . вместо source поскольку первый является стандартом POSIX, а последний – багизмом .

    Linux и Unix - лучшая ОС в мире.