Переадресация X11 - это только переадресация окон , порожденных в текущем сеансе. Поскольку рабочий стол не является окном, его невозможно переслать таким образом. Чтобы получить удаленный доступ к рабочему столу, необходимо использовать что-то вроде VNC.
-121--184609-Попробуйте в/etc/apache2 my listen.conf: Слушайте 80 Слушайте 443
Также проверьте, использует ли другое приложение порт 443, попробуйте освободить этот порт и повторите попытку!
-121--98802- Вы можете просто добавить его в конец file2.txt
, выполнив
ls -a | grep text1 >> file2.txt
Или если вы хотите, чтобы он был в другом файле
ls -a | grep text1 > output.txt
cat file2.txt >> output.txt
Если вы хотите stderr вместо stdout
ls -a | grep text1 2>> output.txt
Обратите внимание, что это, вероятно, не поместит ничего в ваш файл, так как ls -a
вряд ли будет выводить что-либо
EDIT: Если вы хотите перенести результаты в другую программу вместо перенаправления в файл, вы, вероятно, захотите использовать именованные каналы.
mkfifo pipe1
cat pipe1 | next program &
ls -a | grep text1 >> pipe1
cat file2.txt >> pipe1
После упоминания find
я обнаружил, что он может принимать более 1 пути в качестве аргумента пути. Так что это просто:
find /opt/foo/lib.jar /opt/bar/lib.jar -prune 2> /dev/null
Вы можете создать функцию-оболочку вокруг ls
, которая перебирает аргументы (в том порядке, в котором они заданы ), вызывая ls
для каждого:
myls() {
for arg do
ls -d -- "$arg"
done
}
Со ссылкой на ответ Стефана в Как использовать такие аргументы, как $1 $2... в цикле for? для синтаксиса for arg do
.
В zsh
для сокращения списка файлов до существующих можно использовать квалификатор (N)
glob, добавляемый к каждому элементу списка:
files=(/opt/foo/lib.jar /opt/bar/lib.jar)
that_exist=($^files(N))
(($#that_exist > 0 )) && print -rl -- $that_exist
Обратите внимание, что, в отличие от ls
, он может сказать, существует ли файл или нет, даже если у вас нет поиска доступа к его родительскому каталогу (до тех пор, пока у вас есть доступ для чтения ), так как он ищет соответствующие записи в каталоге, не пытаясь получить доступ к файлу.
См. также:
that_exist_after_symlink_resolution=($^files(N-^@))
Который выбирает файлы, которые не являются(^
)символической ссылкой(@
)после разрешения символической ссылки(-
). Эквивалентно использованию ls -Ld
.
Если у вас есть список путей, которые вы хотели бы просмотреть и проверить на существование, то я предполагаю, что вы хотели бы либо сделать что-то с теми, которые существуют, либо с теми, которых не существует. или для обоих наборов путей.
При стандартной оболочке это лучше всего делать в цикле.
for pathname in /the/first/path /the/second/path /some/other/path
do
if [ -e "$pathname" ]; then
printf 'Path "%s" exists\n' "$pathname"
else
printf 'Path "%s" does not exist\n' "$pathname"
fi
done