Basta adicionar
cd /path/to/directory/you/care/about
na parte inferior do seu arquivo ~ / .bashrc.
Sempre que eu inicio o cygwin, eu preciso gravar vários níveis até o único diretório que me interessa quando uso o cygwin.
Como posso obter o cygwin para iniciar neste diretório específico Por padrão ... ou seja, toda vez que eu iniciar o Cygwin, ele estará nesse diretório já?
Encontrei algumas coisas que podem ser próximas ou próximas, mas não as entendo e realmente não há resultados quando pesquiso esses termos (n00b). Qualquer ajuda seria ótima!
Basta adicionar
cd /path/to/directory/you/care/about
na parte inferior do seu arquivo ~ / .bashrc.
Definir "start cygwin"? Você pode rodar servidores cygwin quando liga sua máquina, mas estou assumindo que não é isso que você quer dizer.
Se você quer dizer, acabe em uma pasta específica toda vez que abrir um prompt do shell, você pode colocar isso em seu $ HOME / .bashrc
Edite seu $ HOME / .bashrc usando um editor cygwin (um que use finais de linha UNIX), adicione uma linha
cd /whatever/directory/you/want
Se você está constantemente indo para esse diretório, provavelmente é melhor criar um alias também.
Na sua conta $ HOME / .bashrc:
alias GT='cd /whatever/directory/you/want'
Chame o que você quiser; Acabei de usar o GT para "ir lá" e em maiúsculas porque facilita a separação dos comandos incorporados, que nunca são capitalizados.
na última linha do seu .bash_profile (ou .profile), coloque cd your/dirctory/here
script python
!! antes de usar adicione .bashrc qualquer string até o fim !!
use name_script.py c:\path
path_bachrc
- caminho para .bashrc
cmd
- caminho para cygwin.bat
#***********************************************#
# [email protected] #
#***********************************************#
import argparse
import subprocess
import os
path_bachrc = 'c:/PP/cygwin/home/adm/.bashrc'
cmd = 'c:\PP\cygwin\Cygwin.bat'
def delEndLineFromFile(filename):
with open(filename, 'r') as f:
aList = f.readlines()
bList = aList[0:-1]
with open(filename, 'w') as fd:
fd.writelines(bList)
parser = argparse.ArgumentParser()
parser.add_argument("newPath", type=str, help="New path in .bachrc cygwin")
args = parser.parse_args();
delEndLineFromFile(path_bachrc);
p = args.newPath;
pNew = 'cd /cygdrive/' + p[:1] + p[2:].replace('\', '/')
print(pNew)
with open(path_bachrc, 'a') as f:
f.write(pNew)
PIPE = subprocess.PIPE
p = subprocess.Popen(cmd, shell = True)
Esta solução não requer edição .bashrc:
Abaixo está um trecho dos documentos oficiais no mkpasswd:
For example, this command:
Example 3.11. Using an alternate home root
$ mkpasswd -l -p "$(cygpath -H)" > /etc/passwd
would put local users home directories in the Windows 'Profiles' directory.
(respondeu copiado de uma pergunta semelhante em stackoverflow porque gosto mais dessa solução que os que estão aqui )