Я создал для каждого проекта установку Homestead. Я включил after.sh
(в корневой каталог) для предоставления других пакетов, таких как RethinkDB, без проблем, но файл aliases
(также в корневом каталоге), хотя и отображается в виртуальной машине как ~/.bash_aliases, не выполняет никаких псевдонимов, когда Я их набираете Так, например эти псевдонимы:.Laravel Homestead Per Project Установить Bash Псевдонимы Команды не найдены
alias artisan='php artisan'
alias autoload='composer dump-autoload'
в командной строке как:
artisan migrate:refresh --seed
autoload
Бросьте эти ошибки:
Could not open input file: artisan
autoload: command not found
Это происходит для любого из псевдонимов, которые я пытаюсь сделать. Я проверил, что ~/.bash_aliases (или /home/vagrant/.bash_aliases) существует с помощью nano, и это определенно копия псевдонимов. Просто ни одна из команд не используется, как если бы она не существовала или как будто файл, находящийся в нужном месте, недоступен.
Кто-нибудь знает почему? или как это исправить? Удивительно, как досадно не использовать псевдонимы, которые я обычно использую локально, или при глобальной установке Homestead при использовании этой виртуальной машины.
UPDATE
Я заметил, что я получаю список command not found
ошибок, когда я SSH в VM, что равное количество псевдонимов я включил. Тот же список появляется, если я запустил source ~/.bash_aliases
. Для полной ясности .bash_aliases
находится в /home/vagrant
рядом с отображенной исходной папки /home/vagrant/app
, а выход из SSHing в VM, и связанного с ним файла псевдонимов включены:
SSH в VM
$ vagrant ssh
Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.19.0-25-generic x86_64)
* Documentation: https://help.ubuntu.com/
Last login: Mon Feb 15 00:37:39 2016 from 10.0.2.2
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
[email protected]:~$
Псевдонимы Файл
# Homestead --------------------------------------------------------------------
alias ..="cd .."
alias ...="cd ../.."
alias h='cd ~'
alias c='clear'
alias phpspec='vendor/bin/phpspec'
alias phpunit='vendor/bin/phpunit'
# Laravel ----------------------------------------------------------------------
# Access Artisan when within project folder
alias artisan='php artisan'
# Access Tinker when within project folder
alias tinker="php artisan tinker --env=local"
# Composer --------------------------------------------------------------------
alias autoload='composer dump-autoload'
# App -------------------------------------------------------------------------
alias app="cd app"
After.sh Файл
#!/usr/bin/env bash
#
# Install RethinkDB on Ubuntu
# @see https://www.rethinkdb.com/docs/install/ubuntu/
#
# Add RethinkDB repository and install
source /etc/lsb-release && echo "deb http://download.rethinkdb.com/apt $DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list
wget -qO- https://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y rethinkdb
# Setup RethinkDB as a service using default configuration file
#sudo cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/instance1.conf
#sudo vim /etc/rethinkdb/instances.d/instance1.conf
#sudo /etc/init.d/rethinkdb restart
# Setup RethinkDB as a service by copying the custom configuration file
sudo cp /home/vagrant/app/rethinkdb.conf /etc/rethinkdb/instances.d/instance1.conf
sudo /etc/init.d/rethinkdb restart
UPDATE 2
Nano выход .bash_aliases
, который выглядит как файл мои псевдонимы, но на выходе после этого из alias
обрезает первую букву псевдонимами.
# Homestead ----------------------------------------------------------------------
alias ..="cd .."
alias ...="cd ../.."
alias h='cd ~'
alias c='clear'
alias phpspec='vendor/bin/phpspec'
alias phpunit='vendor/bin/phpunit'
# Laravel ----------------------------------------------------------------------
# Access Artisan when within project folder
alias artisan='php artisan'
# Access Tinker when within project folder
alias tinker="php artisan tinker --env=local"
# Composer --------------------------------------------------------------------
alias autoload='composer dump-autoload'
Выход из просто набрав alias
в терминале:
[email protected]:~$ alias
'lias ..='cd ..
'lias ...='cd ../..
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
'lias artisan='php artisan
'lias autoload='composer dump-autoload
'lias c='clear
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
'lias h='cd ~
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
'lias phpspec='vendor/bin/phpspec
'lias phpunit='vendor/bin/phpunit
'lias tinker='php artisan tinker --env=local
окончательное решение
Благодаря @JoshRumbut для решения этой проблемы см ниже его комментарии.
[email protected]:~$ tr -d '\r' <~/.bash_aliases >~/tmp
[email protected]:~$ mv ~/tmp ~/.bash_aliases
[email protected]:~$ unalias -a
[email protected]:~$ source .bash_aliases
эта линия настолько подозрительной. 'source' может сломать командную строку' source/etc/lsb-release && echo 'deb http://download.rethinkdb.com/apt $ DISTRIB_CODENAME main "| sudo tee/etc/apt/sources.list.d/rethinkdb.list' – FZE