Большинство минималистичных - подход № 4 и № 3, оба могут быть преобразованы в функцию; # 2 мой любимый - awk. # 1 использует команду script - очень универсальный инструмент, полезный для записи командной строки в целом; применимо в любом месте, независимо от того, что вы хотите записать.
Подход №1: есть команда /usr/bin/script (которая по умолчанию работает с ubuntu) для записи вывода командной строки, который захватывает все, вместе с подсказка и команда. Чтобы просто сохранить одну команду и ее вывод в конкретный файл, используйте флаг -c и укажите выходной файл. Пример
xieerqi:$ script -c 'apt-cache depends gnome-terminal' outputFile.txt
Script started, file is outputFile.txt
gnome-terminal
Depends: gconf-service
gconf-service:i386
Depends: libatk1.0-0
Depends: libc6
Depends: libgconf-2-4
Depends: libgdk-pixbuf2.0-0
(extra output omitted)
Script done, file is outputFile.txt
xieerqi:$ cat outputFile.txt
Script started on 2015年10月22日 星期四 08时58分46秒
gnome-terminal
Depends: gconf-service
gconf-service:i386
Depends: libatk1.0-0
Depends: libc6
Depends: libgconf-2-4
(extra output omitted)
Script done on 2015年10月22日 星期四 08时58分46秒
Подход №1:
Awk имеет функцию system(), которая позволяет запускать команды оболочки из скрипта или команды awk. Вывод будет отображаться на экране, сначала команду, затем вывод. Для перенаправления того, что вы видите в файле, используйте оператор >.
Это можно сделать двумя способами: попросите пользователя ввести материал из stdin или в качестве аргумента командной строки. [1] awk 'BEGIN{ print "Enter command to run: "; getline com < "/dev/stdin"; system(com) }'
awk 'BEGIN{ print "Enter command to run: "; getline com < "/dev/stdin"; system(com) }'
Enter command to run:
apt-cache depends gnome-terminal
gnome-terminal
Depends: gconf-service
gconf-service:i386
Depends: libatk1.0-0
Depends: libc6
Depends: libgconf-2-4
Depends: libgdk-pixbuf2.0-0
Depends: libglib2.0-0
(extra output omitted)
(2) Версия командной строки args; не включая выход, чтобы избежать слишком долгого ответа. Снова добавьте > для перенаправления на файл
awk 'BEGIN{for (i=1; i<= ARGC; i++) myString = myString" "ARGV[i]; print myString; system(myString) }' apt-cache depends gnome-terminal
Подход №3: попросите bash выполнить задание для вас
xieerqi@eagle:~$ bash -c ' MYCOMMAND="apt-cache depends gnome-terminal"; echo $MYCOMMAND ; $MYCOMMAND '
apt-cache depends gnome-terminal
gnome-terminal
Depends: gconf-service
gconf-service:i386
Depends: libatk1.0-0
Depends: libc6
Depends: libgconf-2-4
Depends: libgdk-pixbuf2.0-0
Depends: libglib2.0-0
Перенаправить в файл с помощью оператора > :
bash -c ' MYCOMMAND="apt-cache depends gnome-terminal"; echo $MYCOMMAND ; $MYCOMMAND ' > output.txt
Подход №3: попросите bash выполнить задание для вас
Вдохновленный постом ByteCommander; мы можем использовать read, а затем выполнить необходимые команды в подоболочке
read command && (printf "COMMAND: %s" "$command";printf "\n+++++++\n"; sh -c "$command")
Пример прогона:
xieerqi:$ read command && (printf "COMMAND READ: %s" "$command";printf "\n+++++++\nOUTPUT\n"; sh -c "$command")
printf "This was a triumph; I'm making a note here - huge success"
COMMAND READ: printf "This was a triumph; I'm making a note here - huge success"
+++++++
OUTPUT
This was a triumph; I'm making a note here - huge success
Подход # 5:
Использовать echo или here string (aka <<< "string") для предоставления аргументов sh -c через xargs
xieerqi:$ echo "apt-cache policy gnome-terminal" | xargs -I {} bash -c 'echo {}; {}'
apt-cache policy gnome-terminal
gnome-terminal:
Installed: 3.6.2-0ubuntu1
Candidate: 3.6.2-0ubuntu1
Version table:
*** 3.6.2-0ubuntu1 0
500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status
И если вы хотите, вы можете использовать этот же трюк с псевдонимом: [!d21 ]
xieerqi:$ printAndRun <<< "apt-cache policy gnome-terminal"
apt-cache policy gnome-terminal
gnome-terminal:
Installed: 3.6.2-0ubuntu1
Candidate: 3.6.2-0ubuntu1
Version table:
*** 3.6.2-0ubuntu1 0
500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status
xieerqi:$ type printAndRun
printAndRun is an alias for 'xargs -I {} bash -c "echo {}; {}"'
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]
давайте здесь весело.... Я просто читал на некоторых сайтах, и я только что получил некоторые исправления. Я не пробовал еще, потому что нет коробки испытания.
Вам нужно установить пакет от нового НПА (который вы собираетесь вставить его в убунту).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
после того, как установка успешно завершена, выполните эту команду в терминале
disper -e
он автоматически определит разрешение и расширение рабочего стола, без их клонирования. Я надеюсь, что это руководство поможет вам. Но если этот способ не работает, попробуйте второй....
второй напрямую использовать систему, которая уже предварительно установлена в машине под расширения xrandr. Вы можете использовать графические, называемая grandr
sudo apt-get install grandr
для меня, grandr очень полезно установить Пользовательское разрешение для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать командную строку. Вставьте его в свой терминал и он будет работать как Шарм....
xrandr --output VGA1 --auto --right-of LVDS1
предположим, что вы находитесь с помощью lvds-дисплея (с ноутбука) и VGA-дисплей с подключенного монитора. Как узнать мой монитор? Легко, с помощью xrandr -q прямо из вашего терминала. Это мой выход :
если терминал показывает входы vga1 и VGA2, просто заменить мои выше командной строке. И конечно, не стесняйтесь исследовать с командной строки. Может быть, это весело (я думаю)
Тсссс : я уже пробовал это с Ubuntu с lxde и KDE о среде для второго мнения. Для первого, я еще не попробовал, потому что у меня нет видеокарты NVIDIA-работает окно, чтобы проверить на. Наслаждаться.
ээээ.... для пользователей KDE, то не волнуйтесь, потому что вы можете установить расширенные Ши напрямую от настроек системы.
[!d8]
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]
Давайте немного повеселимся ... Я просто читал на некоторых сайтах, и я только что получил некоторое исправление. Я еще не пробовал, потому что у меня нет тестовой коробки.
Вам нужно установить пакет из нового PPA (который вы собираетесь вставить в свой ubuntu).
sudo add-apt-repository ppa:disper-dev/ppa
sudo add-apt-repository ppa:nmellegard/disper-indicator-ppa
sudo apt-get update
sudo apt-get install disper disper-indicator
После успешного завершения установки запустите эту команду с терминала
disper -e
. Он автоматически определит разрешение и расширит рабочий стол, не клонируя их. Надеюсь, это руководство поможет вам. Но если этот способ не работает, вы можете попробовать второй ...
Второй непосредственно использует систему, которая уже предварительно установлена в машине под названием xrandr. Возможно, вы захотите использовать графический, называемый grandr
sudo apt-get install grandr
Для меня grandr очень полезен для настройки пользовательского разрешения для каждого монитора. А затем, чтобы активировать расширенный вид, вы можете использовать эту командную строку. Вставьте его в терминал, и он будет работать как прелесть ....
xrandr --output VGA1 --auto --right-of LVDS1
Предположим, что вы используете дисплей LVDS (от ноутбука) и дисплей VGA от подключенного монитора. Как узнать мой монитор? Легко, используя xrandr -q прямо с вашего терминала. Этот мой вывод:
Если терминал показывает VGA1 и VGA2, просто замените мою командную строку выше. И, конечно же, не стесняйтесь исследовать данную команду. Возможно, это забавно (я думаю)
Psst: Я уже пробовал это с Ubuntu со средой LXDE и XFCE для второго мнения. Для первого я еще не пробовал, потому что у меня нет коробки с nVidia для тестирования.
Erm .... для пользователей KDE, не волнуйтесь, потому что вы можете установить расширенный диплан непосредственно из системной настройки.
[!d8]