Próbuję napisać alias który skokiem potomek katalogu CWD, który zawiera określony plik (lub pierwszej find
uznał wystąpienie takiego pliku):Bash: zagnieżdżone backticks problemy powodują alias
Poniższa kombinacja poleceń osiąga pożądany rezultat:
cd `dirname \`find -name 'MyFile.txt' | sed -n 1p\``
jednak nie wydaje się uciec to w prawidłowy sposób, aby utworzyć alias pracy:
alias jump="cd \`dirname \\\`find -name '$1' | sed -n 1p\\\`\`"
wyjściowa:
/*
dirname: missing operand
Try `dirname --help' for more information.
bash: cd: find: No such file or directory
Moja logika jest taka, że backticks potrzeba ucieczki w podwójnym cudzysłowie z jednym \
i nie mogę zrobić \\
zostanie przetłumaczony na jeden ukośnik w ciągu, więc druga zagnieżdżona grawis wymaga 1 + 2 = 3.
Wszelkie sugestie?
Dziękuję wszystkim za informacje o dolarze. Specjalne podziękowania dla dogbane za odpowiedź na dokładnie pytanie, które zadałem - jak stworzyć alias przy użyciu tego podejścia. – KomodoDave