Как установить/принять значение по умолчанию на версии командной строки Emacs?

Если Вы просто хотите обратиться к тем полям их именами вместо чисел, можно использовать read:

while read id name age
do
  echo "$id $age"
done < file.tsv 

Править

Я видел Ваше значение наконец! Вот функция удара, которая распечатает только столбцы, которые Вы указываете на командной строке (по имени).

printColumns () 
{ 
read names
while read $names; do
    for col in $*
    do
        eval "printf '%s ' \$$col"
    done
    echo
done
}

Вот то, как можно использовать его с файлом, который Вы представили:

$ < file.tsv printColumns id name
1 ed 
2 joe 

(Функциональные чтения stdin. < file.tsv printColumns ... эквивалентно из printColumns ... < file.tsv и cat file.tsv | printColumns ...)

$ < file.tsv printColumns name age
ed 50 
joe 70 

$ < file.tsv printColumns name age id name name name
ed 50 1 ed ed ed 
joe 70 2 joe joe joe

Примечание: Обратите внимание на названия столбцов, которые Вы запрашиваете! Эта версия испытывает недостаток в проверках работоспособности, таким образом, противные вещи могут произойти, если один из аргументов - что-то как "anything; rm /my/precious/file"

8
21.06.2011, 13:18
3 ответа

Установка emacs-nox вместо emacs должен добиться цели.

13
27.01.2020, 20:08
  • 1
    В Debian/Ubuntu разновидности "№ X" Emacs встроили номер версии: таким образом, имя пакета emacs23-nox. –  Riccardo Murri 21.06.2011, 13:29
  • 2
    ^This (что сказанный riccardo) –  meshfields 08.05.2014, 19:55

Если требуется запустить Emacs в терминале и без графической поддержки X11, просто назовите его с -nw переключатель командной строки:

emacs -nw #...other options

Можно настроить псевдоним оболочки при выполнении этого часто.

Это работает также в случаях, где Вы не управляете тем, что установлено.

21
27.01.2020, 20:08
  • 1
    Кроме того, если переменная среды $DISPLAY не будет установлена, то emacs будет использовать версию программы. –  KeithB 21.06.2011, 23:29

Запуск emacs с emacs -nw должен добиться цели.

1
27.01.2020, 20:08

Теги

Похожие вопросы