Cygwinを起動するときはいつでも、cygwinを使用するときに気にする唯一のディレクトリまで、いくつかのレベルまでcdする必要があります。
どうすればデフォルトでこの特定のディレクトリでcygwinを起動できますか?つまり、Cygwinを起動するたびに、そのディレクトリに既に存在しますか?
おそらくそれと近いものをいくつか見つけましたが、理解できません。これらの(n00b)用語を検索しても、実際には結果がありません。どんな助けでも素晴らしいです!
追加するだけ
cd /path/to/directory/you/care/about
〜/ .bashrcファイルの最後に。
「start cygwin」を定義しますか?マシンの電源を入れたときにcygwinサーバーを実行できますが、それはあなたが意図していることではないと思います。
つまり、シェルプロンプトを開くたびに特定のフォルダーに移動する場合は、それを$ HOME/.bashrcに置くことができます。
Cygwinエディター(UNIXの行末を使用するエディター)を使用して$ HOME/.bashrcを編集し、行を追加します。
cd /whatever/directory/you/want
このディレクトリに頻繁にアクセスする場合は、エイリアスを作成することをお勧めします。
あなたの$ HOME/.bashrcに以下を入れてください:
alias GT='cd /whatever/directory/you/want'
好きなように呼んでください。 「行く」ためにGTを使用しましたが、大文字にしない組み込みコマンドから簡単に分離できるため、大文字にしました。
.bash_profile(または.profile)の最後の行にcd your/dirctory/here
このソリューションでは、.bashrcを編集する必要はありません。
以下はmkpasswdの公式ドキュメントの抜粋です。
たとえば、次のコマンド:
例3.11。代替ホームルートの使用
$ mkpasswd -l -p "$(cygpath -H)" > /etc/passwd
ローカルユーザーのホームディレクトリをWindowsの「プロファイル」ディレクトリに配置します。
( stackoverflow の類似の質問からコピーされた回答がここにあるものよりもこのソリューションが好きなので)
pythonスクリプト
!!使用前に末尾に.bashrcの文字列を追加してください!!
使用する name_script.py c:\path
path_bachrc
-.bashrcへのパス
cmd
-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)