как получить базовое имя сложных файлов

Вот пример пути к файлу:

/ИСФ/ГКМ/VPfig/Аас/АР/ClCo дома Эл Республика/ВМН CRTro.txt

То, что я хочу сделать-это базовое имя файла:

CRTro.txt ВМН 

Поэтому я попробовал следующий:

Эхо /ИСФ/ГКМ/VPfig/Аас/АР/ClCo дома Эл Республика/ВМН CRTro.txt | СЭД с'/\// /г' | у awk '{печати $ЯТ}'
CRTro.txt <-- не так, как ожидалось

Или

и basename /ИСФ/ГКМ/VPfig/Аас/АР/ClCo дома Эл Республика/ВМН CRTro.txt
и basename: лишний операнд `дома'
Попробуйте и basename --Help' для получения дополнительной информации. <-- базовое имя не обрабатывает пробелы 

Что лучший способ получить базовое имя файла с пробелами в нем?

+503
myname is 27 мая 2018 г., 18:30:22
40 ответов

Можно использовать targetpw параметра в пользователям использовать sudo?, что сделает судо прошу не за свой собственный пароль, но пароль пользователя, которого вы хотите выполнить команду (которая в большинстве случаев является корнем). Вы можете затем использовать разные пароли для собственных пользователей и корневой учетной записи пользователя.

Используйте следующий фрагмент кода в ваш файлами sudoers, чтобы глобально включить такое поведение (редактировать его с visudo):

По умолчанию targetpw
ВСЕ ВСЕ=(ВСЕ) 

Вторая строка означает, что каждый пользователь системы может использовать sudo, если они знают пароль целевого пользователя. Если его опустить, состав настроенные группы и пароль цели являются обязательными. (Обратите внимание, что вы можете обойти группу требованию, если у вас есть доступ к су, а это не делает чести такой конфигурации.)

Вы также можете использовать один из следующих двух вариантов, которые будут применяться только в targetpw директивы для конкретного пользователя или группы, соответственно:

По умолчанию:имя пользователя targetpw
пользователь ALL=(ALL) отсутствует все

По умолчанию:%имя_группы targetpw
%имя_группы все=(все) 

(Вообще не указывать все все=(все) если вы используете одну из этих!)

+951
Charles Csuri 03 февр. '09 в 4:24

Именно это у меня работает на Mac ОС X 10.11.

$ hdiutil создать -размер 128М -ФС HFS+ и бла 
...............................................................................
создано: /отдельный файл/var/tmp/и бла.употр
$ hdiutil Маунт-бла.употр 
/разработки/диск1 GUID_partition_scheme 
в /dev/disk1s1 Apple_HFS /объемы/без названия
$ ДФ | ЕНТ грэп 
Файловой системы 512-блоки, используемые имеющихся мощностей iused программа %iused, установленный на
в /dev/disk1s1 262064 6144 255920 3% 766 31990 2% /Объемы/без названия
$ катапультироваться hdiutil /объемы/без названия
"диск1" размонтировать.
"диск1" катапультировался.
$ ДФ | ЕНТ грэп 
Файловой системы 512-блоки, используемые имеющихся мощностей iused программа %iused, установленный на
$ 
+914
alcazaro 29 нояб. 2014 г., 05:47:32
Другие ответы

Связанные вопросы


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

Если вы удалите диск из рейда, а рейд все равно работает, потому что отсутствует диск был покрыт за счет избыточности, а затем добавить замены диска, то диск будет перезаписан. Нет потери данных в том, что данные, которые вы видите на устройстве/dev/MDX в устройстве не изменится. Однако, если у вас важные данные на новый диск, он будет потерян из-за перезаписи.

Так что все зависит от того, есть ли данные на остальных дисках был цел или нет.

поставили неправильную симметрию, неправильный размер нашивки, диски в неправильном порядке и т. д.

Старайтесь избегать для mdadm --создать для восстановления рейда. Это худший вариант, потому что это так легко ошибиться (так много переменных, таких как порядок дисков, размер блока, уровень RAID, набег разметки, метаданные версия, смещения данных, ... и адресас значения по умолчанию для этих изменений с течением времени, поэтому необходимо указать все из них правильно).

Если вы должны использовать его, вы должны делать это в режиме только для чтения: резервное копирование метаданных регионов, на снимок слоя, отсутствует диск, --предположим-чисто , чтобы предотвратить его от синхронизации, ...

Может ли плохая синхронизация разрушает или изменения данных зависит от того, как плохо у тебя настройки не те. В основном в конфигурации RAID5, при этом все диски целы и все данные паритет является правильным, Вы можете синхронизировать с любым заказом диска и любого размера блока. Сама синхронизация не нанесет никакого ущерба, затем. Такое XOR исключающее ИЛИ, независимо от того, или размер, результат тот же.

# усечь -с 128М а б
# losetup -Ф --шоу б
на /dev/loop0
в /dev/loop1
в /dev/loop2
# команды mdadm --создать устройство /dev/мд42 уровня=5 --блок=512 --рейд-приборами=3 к /dev/loop0 как /dev/loop1 и /dev/loop2
адреса: по умолчанию в версии 1.2 метаданные
адреса: массив /Дев/мд42 начал.
# лоскуток -Н 1 /Дев/мд42
# команды mdadm --стоп /Дев/мд42
адреса: остановился на /dev/мд42
# ДД, если=/dev/loop0 БС=1М пропустить=8 | программы md5sum
98f23e09198f7943e27030e8e0f9bc30 -
# ДД, если=/dev/loop1 БС=1М пропустить=8 | программы md5sum
90ef43c60e540b930c6db8dae831f8ab -
# ДД, если=/dev/loop2 БС=1М пропустить=8 | программы md5sum
d010c8ae141fadc3347e8ed319b76db9 -
# команды mdadm --создать устройство /dev/мд42 уровня=5 --блок=64 --рейд-приборами=3 к /dev/loop2 на /dev/loop0 как /dev/loop1
адреса: файл /dev/loop2-видимому, является частью RAID-массива:
 уровень=устройств конфигурации RAID5=3 временные метки ctime=Пт 5 сентября 11:35:51 2014
адреса: на /dev/loop0-видимому, является частью RAID-массива:
 уровень=устройств конфигурации RAID5=3 временные метки ctime=Пт 5 сентября 11:35:51 2014
адреса: файл /dev/loop1-видимому, является частью RAID-массива:
 уровень=устройств конфигурации RAID5=3 временные метки ctime=Пт 5 сентября 11:35:51 2014
Продолжить создание массива? да
адреса: по умолчанию в версии 1.2 метаданные
адреса: массив /Дев/мд42 начал.
# команды mdadm --подождите файл /dev/мд42
# команды mdadm --стоп /Дев/мд42
адреса: остановился на /dev/мд42
# Эхо 3 > /труды/системы/ВМ/drop_caches
# ДД, если=/dev/loop0 БС=1М пропустить=8 | программы md5sum
98f23e09198f7943e27030e8e0f9bc30 -
# ДД, если=/dev/loop1 БС=1М пропустить=8 | программы md5sum
90ef43c60e540b930c6db8dae831f8ab -
# ДД, если=/dev/loop2 БС=1М пропустить=8 | программы md5sum
d010c8ae141fadc3347e8ed319b76db9 -

Однако, если диск отсутствует из набора, или избыток диска в комплекте, или если вы измените другие вещи, как перегородки смещения на один из дисков или вы используете другой уровень RAID, он не работает, что путь и вы потеряете все, что написано синхронизации. И можно ли вылечиться от Есть зависит от данных на других дисках еще есть избыточность, чтобы прикрыть то, что было перезаписано. Нет простого решения, чтобы оправиться от такой ситуации.

+879
Richard Herbst 26 мар. 2016 г., 13:15:17

У меня есть некоторые файлы, названные как эти:

63018933.МР4?знак=1325697436_b0c3e70c6e339380b4a484c576a8c287

63808488.МР4?знак=1325697401_4ae5f7a68d93873c8881b303e7655e14

Как я могу переименовать все их, например 63018933.МР4(удалить символы после МР4)?

+877
Tiffany scott 26 окт. 2013 г., 20:41:25
libpng предупреждение: приложение было скомпилировано с PNG.ч от libpng-1.2.39
libpng предупреждение: приложения работает с PNG.с libpng-1.4.0
предупреждение libpng: несовместимая версия libpng в приложения и библиотеки

Rgooglemaps зависит от ПНГ: http://cran.r-project.org/web/packages/RgoogleMaps/index.html
Пытаясь запустить RgoogleMaps код через Qt в результате вышеуказанной ошибки.


Линукс-y3pi: # команды zypper, что обеспечивает libpng

Загрузка данных репозитория...
Предупреждение: обновления репозитория 'для openSUSE 11.3 11.3-1.82', кажется, устарела. Рекомендуется использовать другое зеркало или сервер.
Чтение установленных пакетов...
С | Имя | Тип | Версия | Арки | Хранилище 
--+-------------+---------+--------------+--------+------------------------------------
в | libpng12-0 | пакет| 1.2.46-7.3.1 | архитектуру x86_64 | обновления для openSUSE 11.3 11.3-1.82
я | libpng12-0 | пакет| 1.2.44-2.1 | архитектуру x86_64 | для openSUSE-11.3-Осс 
я | libpng12-0 | пакет| 1.2.44-2.1 | архитектуру x86_64 | для openSUSE-11.3 11.3-1.82 
в | libpng12-0 | пакет| 1.2.46-7.3.1 | для i586 | обновления для openSUSE 11.3 11.3-1.82
в | libpng12-0 | пакет| 1.2.44-2.1 | для i586 | для openSUSE-11.3-Осс 
в | libpng14-14 | пакет| 1.4.3-3.3.1 | архитектуру x86_64 | обновления для openSUSE 11.3 11.3-1.82
я | libpng14-14 | пакет| 1.4.3-2.1 | архитектуру x86_64 | для openSUSE-11.3-Осс 
я | libpng14-14 | пакет| 1.4.3-2.1 | архитектуру x86_64 | для openSUSE-11.3 11.3-1.82 
в | libpng14-14 | пакет| 1.4.3-3.3.1 | для i586 | обновления для openSUSE 11.3 11.3-1.82
в | libpng14-14 | пакет| 1.4.3-2.1 | для i586 | для openSUSE-11.3-Осс 

Работает с Qt исполняемый с лдд результаты в:


Аниша@Линукс-y3pi:~/рабочий стол/Азбука/qтр> лдд квартал

 Линукс-ВДСО.так.1 => (0x00007fff5312c000)
 либр.таким образом = > в /usr/lib64/Р/Либ/либр.так (0x00007f1cf838b000)
 libRblas.таким образом = > в /usr/lib64/Р/Либ/libRblas.так (0x00007f1cf815f000)
 libRlapack.таким образом = > в /usr/lib64/Р/Либ/libRlapack.так (0x00007f1cf7de5000)
 libRcpp.таким образом = > в /usr/lib64/Р/библиотеки/Rcpp/Либ/libRcpp.так (0x00007f1cf7b94000)
 libRInside.таким образом = > в /usr/lib64/Р/библиотеки/RInside/Либ/libRInside.так (0x00007f1cf797f000)
 libQtWebKit.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/библиотека lib/libQtWebKit.так.4 (0x00007f1cf61ab000)
 libQtSvg.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtSvg.так.4 (0x00007f1cf5f4b000)
 libQtXml.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtXml.так.4 (0x00007f1cf5cff000)
 libQtGui.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtGui.так.4 (0x00007f1cf4f82000)
 libQtNetwork.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtNetwork.так.4 (0x00007f1cf4c44000)
 libQtCore.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtCore.так.4 (0x00007f1cf4761000)
 библиотекой libpthread.так.0 => /lib64/библиотекой libpthread.так.0 (0x00007f1cf4544000)
 с libstdc++.так.6 = > в /usr/lib64/libstdc++в.так.6 (0x00007f1cf423a000)
 libm.так.6 => /lib64/libm.так.6 (0x00007f1cf3fe3000)
 libgcc_s.так.1 => /lib64/libgcc_s.так.1 (0x00007f1cf3dcd000)
 библиотеки libc.так.6 => /lib64/библиотеки libc.так.6 (0x00007f1cf3a6d000)
 libreadline.так.6 => /lib64/libreadline.так.6 (0x00007f1cf3826000)
 librt.так.1 => /lib64/librt.так.1 (0x00007f1cf361d000)
 libdl.так.2 => /lib64/libdl.так.2 (0x00007f1cf3419000)
 libgomp.так.1 = > в /usr/lib64/libgomp.так.1 (0x00007f1cf320b000)
 /lib64/ЛД-ОС Linux для архитектуры x86-64.так.2 (0x00007f1cf899a000)
 libgfortran.так.3 = > в /usr/lib64/libgfortran.так.3 (0x00007f1cf2f25000)
 libXrender.так.1 = > в /usr/lib64/libXrender.так.1 (0x00007f1cf2d1a000)
 libphonon.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libphonon.так.4 (0x00007f1cf2aba000)
 libQtDBus.так.4 => /главная/анишей/qtsdk-2010.05/Кварт/Либ/libQtDBus.так.4 (0x00007f1cf2832000)
 libfontconfig.так.1 = > в /usr/lib64/libfontconfig.так.1 (0x00007f1cf25fb000)
 libfreetype.так.6 = > в /usr/lib64/libfreetype.так.6 (0x00007f1cf2372000)
 сайт libz.так.1 => /lib64/сайт libz.так.1 (0x00007f1cf215c000)
 libXext.так.6 = > в /usr/lib64/libXext.так.6 (0x00007f1cf1f49000)
 libX11.так.6 = > в /usr/lib64/libX11.так.6 (0x00007f1cf1c09000)
 libgthread-2.0.так.0 = > в /usr/lib64/libgthread-2.0.так.0 (0x00007f1cf1a04000)
 libglib-2.0.так.0 = > в /usr/lib64/libglib-2.0.так.0 (0x00007f1cf1720000)
 libSM.так.6 = > в /usr/lib64/libSM.так.6 (0x00007f1cf1517000)
 либице.так.6 = > в /usr/lib64/либице.так.6 (0x00007f1cf12fa000)
 libncurses.так.5 => /lib64/libncurses.так.5 (0x00007f1cf10a5000)
 libexpat.так.1 => /lib64/libexpat.так.1 (0x00007f1cf0e7b000)
 libxcb.так.1 = > в /usr/lib64/libxcb.так.1 (0x00007f1cf0c5e000)
 libpcre.так.0 => /lib64/libpcre.так.0 (0x00007f1cf0a30000)
 аргументов.так.1 => /lib64/аргументов.так.1 (0x00007f1cf082b000)
 libXau.так.6 = > в /usr/lib64/libXau.так.6 (0x00007f1cf0627000)

Р информация:

> sessionInfo ()
R версия 2.15.1 (2012-06-22)
Платформа: x86_64 с-неизвестно-Линукс-гну (64-бит)

язык:
 [1] языкового=язык.В UTF-8 LC_NUMERIC ЯЗЫКОВОГО=С 
 [3] у=язык.UTF-8 в категории lc_collate=язык.В UTF-8 
 [5] LC_MONETARY=язык.Кодировка UTF-8 для категории lc_messages=язык.В UTF-8 
 [7] LC_PAPER=С LC_NAME=С 
 [9] LC_ADDRESS=С LC_TELEPHONE=С 
[11] LC_MEASUREMENT=язык.В UTF-8 LC_IDENTIFICATION=С 

прилагается базовые пакеты:
[1] базы графических методов статистике grDevices наборов утилит 
> 

команды uname -а

Аниша@Линукс-y3pi:~> команду uname -a и кошка /и т. д./Вопрос
ОС Linux ОС Linux-y3pi 2.6.34-12-Desktop в #1 СМП упредить 2010-06-29 02:39:08 +0200 архитектуру x86_64 архитектуру x86_64 архитектуру x86_64 GNU/Линукс
Добро пожаловать в openSUSE 11.3 "Чирок" - \ядра р (\л).

enter image description here

Удаление libpng12 говорит, что придется установить 32-битную версию Р-заделался!

Что делать?

+856
TheDeparted 13 дек. 2011 г., 13:12:16

Как @samiam заявил, что список возвращается к вам в полу-случайном порядке через вызове readdir(). Я только добавлю следующее.

Список вернулось то, что я назвал бы того каталог. На старых файловых систем, заказ будет часто порядок создания, записи файла в каталоге столом были добавлены. Есть, конечно, нюанс, когда запись в директории удален, эта запись затем возвращают, поэтому все последующие файлы, которые хранятся заменит предыдущую запись, поэтому заказ не будет основан исключительно на время создания.

На современных файловых систем, где данные структуры каталогов на основе поиска дерево или хэш-таблица, порядок является практически непредсказуемым.

Примеры

Поковыряв файлы, созданные при выполнении команда показывает следующее иноды были назначены.

$ касания реж/{{1..8},{а..п}}
$ стат-е="%н - %я\н" реж/*
реж/1 -- 10883235
реж/2 -- 10883236
реж/3 -- 10883242
реж/4 -- 10883243
реж/5 -- 10883244
реж/6 -- 10883245
реж/7 -- 10883246
реж/8 -- 10883247
реж/а -- 10883248
реж/б-10883249
реж/с -- 10883250
реж/д -- 10883251
реж/е-10883252
реж/Ф -- 10883253
реж/г -- 10883254
реж/ч -- 10883255
реж/я-10883256
реж/Дж -- 10883299
реж/к -- 10883302
реж/л -- 10883303
реж/м -- 10883311
реж/Н -- 10883424
реж/о -- 10883426
реж/п -- 10883427

Итак, мы видим, что расширение бандажа используются на ощупь создает имена файлов в алфавитном порядке и поэтому они назначаются последовательные номера inode при записи на жесткий диск. (Что однако не влияет на порядок в каталоге.)

Управлении тар команду несколько раз, казалось бы, свидетельствуют о том, что есть заказ в список, так как работает он несколько раз дает один и тот же список каждый раз. Здесь я запустить его 100 раз и потом сравнил работает и они все одинаковые.

$ для меня в {1..100};файл Сделать cjvf определяет смолы.тар.ХZ реж/ > выполнить${Я};сделано
$ для меня в {1..100};делать ЦМП run1 запустить${Я};сделано
$ 

Если мы стратегически удалить скажем реж/е , а затем добавить новый файл реж/УО мы видим, что этот новый файл занял свое место, что реж/е занимали до в каталогах записей в таблице.

$ РМ реж/е
$ касания реж/УО

Теперь давайте сохраним выходе из одного из за выше цикл, только 1-ый.

$ МВ R1а run1 

Теперь, если мы повторно запустить на цикл, который будет выполняться дегтя команду 100 раз, и сравните это второй пробег с предыдущей:

$ программе sdiff R1а run1
Дир/ Дир/
...
реж/C в Реж/с
реж/Ф реж/Ф
реж/е | реж/УО
реж/о реж/о
реж/2 реж/2
...

Мы замечаем, что реж/УО приняло реж/е's место в каталоги, таблицы.

+822
mizan6349 19 мая 2018 г., 17:32:05

Помните, что Юниксах являются многопользовательскими системами по происхождению. Имея это в виду, что-то вроде системы общего между студентами и преподавателями вуза вполне могли бы использовать для деления пользователей на группы. Вы могли бы иметь ограничения на использование в системе установлены, и вы, возможно, захотите, чтобы слушатели имели более строгие ограничения, чем персонал. Вы также можете иметь отдельный вычислительный кластер, который доступен только для тех, кому он действительно нужен (и умеет им пользоваться), что может быть другая группа. (Я предполагаю, что общей базы данных пользователей, но это почти необходимость, когда у вас несколько систем.)

Что касается права доступа к файлам, вы можете в каталоге на какой-то проект и группу, которая имеет доступ к каталогу, чтобы они могли изменять файлы (правильное значение umask установки и использования setgid бит на каталоги помощь).

Из всех сотрудников, у вас будет меньше людей, которые позволяют получить доступ суперпользователя в системе. Один из способов сделать это-использовать файл разрешения, чтобы разрешить только члены определенной группы (часто корень или колесо) для запуска Су. суда будут более распространенных на нынешний Linux на, но он также настроен на использование группы, чтобы определить, кто и что может делать.


Сейчас, конечно, многопользовательские системы, в которых вы логин с серийным терминал / клиент Telnet / SSH и встречаются не так часто больше. Но если ваша система работает каких-либо услуг, которые могут использоваться лицами, не входящими в систему, полезно разделить их на учетные записи пользователей самостоятельно. Затем группы могут использоваться, чтобы позволить ограниченный доступ между пользователями. Например, кронтаб - это описание GNU Binary и использует групповую разрешения, чтобы получить доступ к кронтаб - файлов, и вы могли бы ВСП-данных группы, который бы позволил изменять данные файлы с HTTP-сервера. (Или наоборот, пользователем файлов может быть дано разрешение на чтение для веб-данных, так что HTTP-сервер может прочитать их.)

+789
Radoslav Todorov 4 мар. 2018 г., 12:55:34

Предполагая, что CT.txt имеет записи одного / линия, в то время как петли лучше всего подходит для ваших задач:

при МФС= Читай-город Р; делать
Файлы=/MNT в/из dir1/директория dir2/$город
 Эхо "$файлы"/*
сделано < /home/user/CT.txt

В для петли плохо подходит для этого, однако, он все еще может быть принято на работу:

# установите входной разделитель полей в строку и отключить подстановку
Компании IFS=$'\п';комплект -Ф
для города в $(< /home/user/CT.txt); делать
Файлы=/MNT в/из dir1/директория dir2/$город
 Эхо "$файлы"/*
сделано
+781
windowsgm 4 нояб. 2019 г., 00:06:12

Если у вас есть мысленный образ уровня в стеке Дирс, что вы хотите выскочить, можно использовать функцию:

mpopd функция {
Н=$1
 во время [[ $н > 0 ]]
делать
командой popd
Н=$((Н-1))
сделано
}

Образец выполнения:

[Шаллер@хост smitelli] Дирс
~/tmp/и smitelli
[Шаллер@хост smitelli] команды pushd ТМП/
~/tmp/и smitelli в/tmp ~/tmp/и smitelli
[Шаллер@хост ТМП] команды pushd направле-стабильный/
~/tmp/и smitelli/tmp/и направле-стабильный ~/tmp/и smitelli в/tmp ~/tmp/и smitelli
[Шаллер@хост направле-стабильный] mpopd 2
~/tmp/и smitelli в/tmp ~/tmp/и smitelli
~/tmp/и smitelli
+745
user25765 20 февр. 2015 г., 00:37:38

Хотя я не согласен с аргументом, что говорю это бесполезное использование кошка', там могут быть причины для этого:

Во многих языках (включая английский) слов и предложений, которые читаются слева направо, поэтому показывает поток данных таким же образом, может оказаться более естественным для читателя.

Причина вторая кошка может быть маска код возврата. Такие как:

$ туалетом < /и т. д./пароля
Ш: в /etc/запрета: не удается найти или открыть файл.
$ Эхо $?
1

В то время как с кошкой:

$ туалетом < /и т. д./пароля | кошки
Ш: в /etc/запрета: не удается найти или открыть файл.
$ Эхо $?
0

Это может вступить в игру, если оболочка имеет набор электронный набор. В первом примере это может прервать оболочки после туалета , тогда как в последнем примере было бы продолжить. Очевидно, есть и другие способы борьбы с этим.

Кроме того, разница в производительности двух операторов (т. е. С или без кота) является незначительной (особенно. на современных машинах) и если бы это было важно, раковина-это неправильный язык.

+733
Loukas Avramidis 11 июн. 2017 г., 04:08:43

Следующий пример должен работать на вас.

СЭД с#<а href="">\(.*\)</а>#<а href="HTML-EX/html/\1.html">\1</в>#'

Сначала он захватывает текст между тегов, которые представляют \1 переменной. Затем использовать эту переменную в строке результата.

+724
Muhammad Faheem UL Hussnain 26 нояб. 2014 г., 08:24:24

В subshell-это копия родительской оболочке (которая обычно выполняется в процессе ребенка).

Дочерний процесс-это процесс называется, чтобы запустить какой-либо код (или оболочку, оболочку или команду).

  1. Наглядный пример subshell-это то, что снаряд (обычно) на ( ... ) вызова:

    • Форкс родительской оболочке, создавая суб-оболочки
    • Суб-оболочки выполняет код внутри ( ... )
    • Суб-оболочки возвращает код выхода, stdout и stderr в родительской оболочке.
    • Родительский процесс раковины код выхода, и stdout и stderr строк.

    Некоторые снаряды могут осуществить вызов ( ... ) (или $(...)) без подоболочек (быстрее).

    файл $ сл 1000000 > 
    
    $ время КШ-с помощью VAR=$(<файл)'
    запуск : 0.462 сек сек
    
    $ время ЗШ -с помощью VAR=$(<файл)'
    запуск : 2.037 с сек
    
  2. Дочерний процесс запускается (в основном), когда внешняя команда называется:

    $ общ.
    

    Это процесс, в котором команда запускается на выполнение.

+724
Abdurrazaq Sani Bashir 1 янв. 2019 г., 18:22:42

Поскольку вы гибкий о финальном имена файлов, а это фото из современного смартфона, я рекомендую exiftool для автоматического упорядочивания и переименования фотографий для вас:

  1. во-первых, сделайте копию или резервную копию ~/картинки/для iPhone , поэтому у вас всегда есть что-то падать обратно на в случае необходимости
  2. запустите exiftool на командной строке со следующими параметрами:
$ exiftool -р -р '-именем<DateTimeOriginal' -г ~/outdir/%г-%м-%Д/%Д/%Г-%М-%d_%Н%М.%С.%%Е ~/картинки/мобильный

Это должно очистить свой ~/картинки/мобильный, реорганизации и переименовании их, основываясь на EXIF данных метки данных, что iPhone автоматически встраивается в каждую фотографию, в недавно созданный ~/outdir каталог. Результирующий каталог и изображения имена файлов будут выглядеть так:

~/outdir/2016-01-03/10/2016-01-03_10.38.58.jpg

Установка

Если у вас нет exiftool, можно установить с

$ судо apt-получить установку libimage-exiftool-Perl для

Варианты

  • '-Именем<DateTimeOriginal' - это литерал, часть аргумента
  • определяет назначение шаблона, вы можете изменить например ~/outdir другому пути вашего выбора
  • в настоящее время, %Ч/ часть является то, что дополнительно создает в час суб-директории, в каждую дату каталога. Если вы предпочитаете не иметь такой предоплаты подкаталогов, вы можете просто пропустить тот час, часть, как это: ~/outdir/%г-%м-%Д/%Г-%М-%d_%Н%М.%С.%%Е
  • или если вы не хотите даже в современных каталогах, просто хочу, чтобы картинки прямо в ~/outdir, вы можете опустить актуальный справочник часть и вобще: ~/outdir/%г-%м-%d_%Н%М.%С.%%Е
+638
lera123 24 авг. 2016 г., 09:48:16

Я пытаюсь понять, как терминал работают, делать различные трюки, как писать от одного терминала к другому, меняя настройки tty1 от tty2и т. д. Кроме того, я стараюсь эти вещи - изменение цвета с помощью escape-последовательности непосредственно с клавиатуры. То есть, не через Эхо -е '\е[0;31М', но на ввод с клавиатуры. Он не работает.

Я делаю это шаги:

  1. Откройте tty1 и tty2
  2. В tty2 поставить баш на режим сна, на сон 10м. Набрав слово "один".

enter image description here

  1. Перейти в tty1 сделать эхо -н ^[[0;31М > в /dev/tty2, первый символ ^[ получить таким образом сочетание клавиш ctrl + v в Эку
  2. Вернуться в tty2, набрав слово "два". Да, цвет был изменен на красный, из другого терминала.

enter image description here

  1. Повторите шаги 3,4, но с зеленым цветом и слово "три"

enter image description here

  1. И, наконец, попытка послать escape-последовательности непосредственно с клавиатуры, не еще телетайп, набрав ^[[0;37М в tty2. Я делаю все точно так же - Эку (клавиши Ctrl + V и не нужны, потому что readline спит), то [0;37М, но вам это:

enter image description here

Вопрос: Почему это работает таким образом? Все персонажи те же, терминальное состояние то же, но в одном случае терминал вам последовательности, и в другом случае нет.

+627
Nishant Pal 8 мая 2019 г., 04:51:53

А ответ дан в основном правильный, похоже, что Юм не работает больше в последние установки по CoreOS (установлена вчера из последних coreos_production_vmware_ova.ова от http://stable.release.core-os.net/amd64-usr/current в компании VMware Workstation на ОС Windows).

Приведенные команду ням прерывается в конце. Так замените Шаг (3) с помощью команды

/usr/Бен/ДНФ установить нано

который успешно устанавливает нано в контейнере Федора.

Сделать ваши правки с нано внутри этого контейнера Федора (доступный из CoreOS, так подскажите с помощью /bin/панели инструментов), в то время как повинуясь установки советую пост Дэна. Оставив контейнер Fedora может быть выполнена команда 'выход'.

+585
Darya 1 апр. 2016 г., 12:00:24

Для создания свопа нужно сделать несколько вещей:

  1. есть свободные площади, где своп будет находиться - либо запасной блок устройства (обычно раздел) или обычный файл. Чтобы создать 1ГБ файл, например:

    ДД, если=/dev/нуль=/путь/к/своп/файл БС=графа 1М=1к
    
  2. подготовить swap с помощью команды mkswap команда - это сотрет данные на устройство/файл (это создает некоторые структуры данных есть).

  3. активировать swap при вызове swapon /путь/к/своп/device_or_file. В случае с файлом подкачки файловой системе, очевидно, должен быть установлен первым.

  4. положить его в fstab, чтобы он может быть легко установлен:

    /путь/к/своп/device_or_file по умолчанию своп своп 0 0
    

командой swapoff отключает обмен на устройство. Оба вызове swapon и командой swapoff есть -это опция, которая включает/отключает замена всех ОСП: вызове swapon -это позволяет все свопы указанных в файле/etc/fstab и что нет опции noauto опцией, командой swapoff -это отключает все свопы.

Обмен на файл имеет то преимущество, не требуя отдельного раздела/устройства зарезервировано только для перекачки, но и несет различные издержки: чтение/запись файловой системы слой и содержимое файла могут быть разбросаны по устройства (фрагментированная), который на жесткие диски с вращающимися пластинами может вызвать медленную реакцию.

От моего понимания это не возможно, чтобы гибернации (спящий режим для диска) с только файл-подкачки, так как проснувшись, ядра должен прочитать сохраненное изображение с замены и монтирования файловой системы, во-первых, что на перезимовавших система может иметь серьезные последствия.

+563
Muriel Fournier 1 нояб. 2015 г., 21:43:23

Я не знаю способа, чтобы запросить эту информацию на клиенте. Если вы находитесь на сервере, вы можете увидеть информацию о клиент сдает в каталоге/var/lib в/DHCP-сервер/программа dhclient.аренда. От клиента единственный способ, который я знаю:

судо грэп программа dhclient /ВАР/лог/системный журнал

Что должно дать вам что-то вроде:

20 мая 18:34:38 [имя_машины] программа dhclient: DHCPREQUEST на eth0 порт [DHCP_SERVER_IP] 67
20 мая 18:34:38 [имя_машины] программа dhclient: DHCPACK от [DHCP_SERVER_IP]
20 мая 18:34:38 [имя_машины] программа dhclient: обязательно [client_dhcp_ip] -- обновление в 1517 секунд.
+561
Lad 17 мая 2011 г., 02:30:11

Немного сбивает с толку. вилка - это системный вызов, который создает новый процесс путем копирования родительского процесса изображения. После этого, если процесс ребенок хочет быть другой программы, это вызывает некоторые старпома семейные системные вызовы, такие как пропускная. Если вы, например, хотите запускать ЛС в раковину, раковина вилки новый дочерний процесс, который затем вызывает пропускная("/бин/Общ").

Если вы видите две программы и их пид -ы разные, проверить их цветс (ID родителя это). Например, если Р1 - это идентификатор процесса, чей идентификатор процесса является Р2, это означает, что процесс, идентификатор которого Р1 раздвоенный этого процесса. Но если первый процесс' идентификатор - это не одно и то же, что другого процесса пид, это означает, что одна и та же команда выполняется дважды.

Если значение PID и ppid хранит такие же, но Тид'ы (идентификатор потока) - это другое, это означает, что это один процесс, который имеет 2 нити.

Я думаю, что сделать свой собственный Shell-это хорошая точка старта.

+550
KAPIL MEHTA 22 февр. 2012 г., 02:36:27

Я использую chrony для синхронизации времени NTP для моего сервера в CentOS 7. некоторое время я замечаю какое-то время сервера-это не правильно, я должна использовать команда ntpdate в правильное время.

У меня ниже конфигурации, пожалуйста, дайте мне знать, если я пропускаю некоторые конфигурации.

 для egrep -V В '#|^$' /и т. д./chrony.конф
NTP-сервер minpoll 8
ключевой файл в /etc/chrony/chrony.ключи
commandkey 1
дрифтуйте /ВАР/Либ/chrony/chrony.дрифт
статистика измерений журнала отслеживания 
каталога журнала в /var/журнал/chrony
maxupdateskew 100.0
dumponexit
dumpdir /ВАР/Либ/chrony
местные слоя 10
logchange 0.5
rtconutc

Спасибо СР

+520
Bugk 5 янв. 2013 г., 09:38:35

Используя работу консоли я получаю ответ от MySQL в текстовом формате,

response from mysql on vm

В текст так, как просила

+-------+

| А |

+-------+

| 36 |

+-------+

+-------+

| Б |

+-------+

| 57 |

+-------+

+-------+

| С |

+-------+

| 11 |

+-------+

или ответ как

А

36

Б

57

С

11

Я хочу быть в состоянии преобразовать данные в простой путь как текстовый файл, как показано ниже:

На 36

Б 57

С 11

https://justpaste.it/edit/30310895/df1838c844c0fcd1

+480
allidoiswin 20 нояб. 2012 г., 02:08:47

Следующая команда работает, как ожидалось:

протокол TFTP <tftp_server_name> с some_file

Однако, следующая команда не выполняется:

протокол TFTP <tftp_server_name> с /абсолютный/путь/к/some_file

И сообщение об ошибке отличается для разных файлов. Иногда он читает

Код ошибки 1: файл не найден

и иногда он читает

протокол TFTP: some_file: нет такого файла или каталога

отчеты по TFTP-в:

протокол TFTP-5.0 гПа, без отладки

в.индикатор питания -в докладах:

протокол TFTP-гПа 5.2, с переназначить, с tcpwrappers

демон TFTP настроен-создание и ... надежности. TFTP_DIRECTORY установлен в каталог, права доступа rwx для всех и является собственностью пользователя "Nobody". Сервер работает на Debian хриплый, клиент работает на втиснуться в Debian.

+461
Twinomugisha Justine 15 сент. 2019 г., 07:48:03

Я хотел бы предложить, чтобы добавить пользовательские команды в конце:

в /etc/файл RC.местные

это первый файл, который выполняется после того, как дистрибутив загрузится.

+450
Merouane KHALILI 23 февр. 2019 г., 21:39:18

Пока ответ @Crypteya обеспечен хороший практический ответ, то это тоже может быть полезно, чтобы понять, где проблемные места могут быть в файле журнала сам.

Найти проблемные зоны

Во-первых, создать версию для печати в формате ASCII файла журнала:

строки 2018_12_22_13_04_adfags-модем.журнал > log_modified.txt

Тогда посмотрите на различия:

дифф -у 2018_12_22_13_04_adfags-модем.log_modified.txt журнал

--- 2018_12_22_13_04_adfags-модем.журнал 2019-01-02 18:37:53.656721949 -0500
+++ log_modified.txt 2019-01-03 09:49:37.961613556 -0500
@@ -2973,9 +2973,10 @@
 2018-12-22 13:13:07 инфо decoder_process пробег : 188 ... рабочая Ясс-УВЧ-с syncSigs 3 пакетов 1 раз 9.66 МС
 2018-12-22 13:13:07 инфо getBinaryData decodeBRMM2 : 546-длина пакета может быть неправильным. количество бит не укладывается в байт
 2018-12-22 13:13:07 ошибка reedSoloCheck decodeBRMM2 : 610 -- Рида-Соломона FEC, которые не
-2018-12-22 13:13:07 информация decoder_process пробег : 216 -- Ясс-УВЧ-с работником нашли пакет -PPIe�гы[email protected] Бит ошибки: -1
-2018-12-22 13:13:07 информация decoder_process пробег : 227 ... рабочая Ясс-УВЧ-c бит ошибки: -1, лен 5775, биты destuffed [503, 655, 719, 773, 793, 1344, 1361, 1570, 2298, 2833, 3190, 4239, 4389, 4701, 5370, 5450, 5501], пакет: -PPIe�гы[email protected], Сплит: 3788, биты Вт. обрезаются пики 0 
-
+2018-12-22 13:13:07 инфо decoder_process пробег : 216 ... рабочая Ясс-УВЧ-c найдено пакет -ИПП
+ Битовые ошибки: -1
+2018-12-22 13:13:07 инфо decoder_process пробег : 227 ... рабочая Ясс-УВЧ-c бит ошибки: -1, лен 5775, биты destuffed [503, 655, 719, 773, 793, 1344, 1361, 1570, 2298, 2833, 3190, 4239, 4389, 4701, 5370, 5450, 5501], пакет: -ППИ
+, Сплит: 3788, биты Вт. обрезаются пики 0 
 2018-12-22 13:13:07 инфо decoder_process работать : 228 -- Ясс-УВЧ работник-С байт destuff 01 1Е 71 69 В9 3С 48 66 32 В9 1Е 33 0А Е2 04 23 де Е6 ае С1 ББ Е3-де-02-С9 00 14 63 89 А4 1Е 0d с 77 Е2 92 Ф1 9Б 98 А7 58 0С 9Д 4Е-де-60 7Д 26 29 06 8С Д3 Е8 0В 1В 9А 39 02 01 Б1 49 В9 БФ н0 03 3Е 8Б Д5 ВВ 41 15 АФ 53 БФ 4Б 9А 35 40 97 Е4 03 43 3Ф 07 ЦС 6А 1Д 18 41 21 А1 30 04 0Е 4Е 6А 08 10 А8 84 71 60 СЕ 01 2Д 53 Эд постоянного тока 36 63 АФ С3 Д7 4Д 5Д ФФ 5С 21 85 А4 00 6Б БФ В2 7Ф 9А 60 1С АА 21 44 4А 24 90 2С КД 90 02 23 79 Фе С5 09 05 02 3Б 34 75 В1 0В КБ Д7 ДФ В7 05 Е7 00 А4 63 79 68 84 62 14 В9 74 2Ф 44 7А 90 34 64 ВВ В0 ЕС переменного тока 9В 16 Д8 57 Е4 В9 4Е 8С 20 В2, 20 4Б 2В Ф5 46 40 6Д С2 2С 5Д 88 46 3Ф 6А 34 04 33 0d с 9Д компакт ЦС КБ 68 0А 0Е 84 Д6 21 94 58 А1 04 73 95 А8 н0 Ф9 01 ДД 7Б 2Б АБ 50 Ф6 Е8 Д7 81 4С 4Б объявление 41 30 68 Е3 95 73 АФ 8А Е0 94 05 10 81 13 23 05 А4 2Д 0С 72 32 43 16 4а 6а 9Д 14 А1 40 5А А5 29 С6 С7 16 ЕА 61 0d с Д3 01 1Д 90 9Б 99 УО 41 ка Д4 С6 08 58 АВ, ЕС 1А Ф6 02 6Д Е8 Е5 80 47 42 09 0Е Е0 Д6 А6 объявлений 9А 76 64 80 Д3 98 42 8А Е8 09 37 41 Е3 22 23 С7 82 ЕА 78 19 Е5 А4 А0 0А 4Б А5 С6 22 95 91 А7 66 ФБ 32 Е0 Д6 75 Е6 06 А4 С4 0А 09 85 00 А4 48 54 42 9Д 57 С7 64 10 02 5Д 6Е 3С 71 Е3 Д6 19 8С 38 94 10 3Д формата А4 А3 66 1С 01 А4 68 81 Е2 А0 9Е 5Е 49 86 ФД С2 СЕ 41 А6 94 28 94 72 А0 11 42 02 80 13 70 4Ф 54 12 А4 89 55 2Б 15 22 03 32 27 00 02 60 04 84 40 00 84 14 С1 3Д 46 КБ 4Е 98 88 31 83 38 В5 22 Е2 С4 АБ Б2 18 65 Д3 Е2 96 80 Фе 14 06 69 6Д 9С ае 36 Э9 62 97 52 0А 71 54 25 90 0С 06 С8 СЕ Д9 1Д Калифорния 3Б 02 С6 Ф6 3С 0Е 7А 32 эф С7 00 26 90 46 60 80 5Е Е2 9С 41 В2 9Е 3А 0С 02 07 31 59 72 74 КД 0А 0В 38 86 38 41 Е2 С4 БЭ 91 98 20 А1 7Ф А4 Е5 78 95 87 1Е 01 32 В0 37 21 45 59 36 59 н0 3С Ф6 01 3Б 15 Е4 69 00 85 04 90 01 59 02 56 02 6Д Ф3 постоянного тока 1С 62 90 44 01 2Д 46 Е0 82 АБ А5 1Ф ДД Е8 2А Д4 9Б Е8 00 А4 Д9 Д6 БА ФА Е7 34 24 52 ДА 14 от 08 63 0Е Ц0 9С 04 40 С9 10 да 48 3Д 42 32 80 37 81 8Д 8е 10 21 11 Д2 А2 постоянного тока 7В А5 С7 32 2А 4Ф С8 90 34 28 9Б 73 05 4Б УО 15 41 68 87 75 0А 38 91 С3 69 6Б 9Г Е1 66 02 ДД 6Е 88 70 94 62 2А БЦ Д5 4А А2 14 0В 19 А9 80 ка 42 В9 6Ф 54 18 11 31 64 5Б 0Е 83 С4 Д7 48 81 С4 03 15 5Ф Е8 Д9 1А 40 А0 90 58 38 35 23 94 0А 85 С2 2А 07 24 10 13 06 40 1Д 66 03 ФК А6 14 89 11 3Ф 3Ф Д4 Д5
 2018-12-22 13:13:07 инфо decoder_process пробег : 244 -- работник Ясс-УВЧ-с ошибками пакетов, в любом случае отправка 
 2018-12-22 13:13:07 инфо decoder_process пробег : 259 -- работник Ясс-УВЧ-Си послал к сайту spacelink

Как можно увидеть в унифицированный выходной сравнения, исходный файл журнала содержит непечатные символы ASCII в результате в файле, который был идентифицирован как бинарные, а не текстовые. В строках вывода игнорирует непечатаемые символы и помещает следующий текст на новую строку.

Какие непечатаемые символы?

Мы можем использовать вывести для просмотра шестнадцатеричных и ASCII, который бок о бок. И мы знаем проблемные участки возникают только после -ИЦП печатных символов.

кошка 2018_12_22_13_04_adfags-модем.журнал | шестнадцатеричного представления -с |грэп -А2 ППИ

000908c0 6е 6е 75 64 20 70 61 63 6б 65 74 20 2Д 50 50 49 |пакет-ИПП круглый|
000908d0 00 65 1А 47 02 79 15 2е 40 18 09 42 69 74 20 65 |[email protected] е|
000908e0 6Ф 72 72 72 73 20 2Д 3а 0а 31 32 30 31 31 38 2Д |rrors: -1.2018-1|
--
000909d0 5д 2С 20 50 61 63 65 74 6б 3а 20 2Д 50 50 49 00 |], пакета: -индекс потребительских цен.|
000909e0 65 1А 47 02 79 15 40 18 20 53 70 2е 2С 6С 69 74 |е.Г.г[email protected], Сплит|
000909f0 3а 20 33 37 38 38 2С 20 42 69 74 73 20 77 2е 20 |: 3788, биты Вт. |

Это показывает местоположение таинственного значения и несколько непечатаемых символов в исходном файле журнала.

При осмотре линии проблемы с помощью таблицы ASCII:

в ASCII

Декабря Декабря Декабря Декабря Шестигранный Шестигранный Шестигранный Шестигранный Шестигранный Шестигранный Шестигранный Шестигранный Декабря Декабря Декабря Декабря 
 0 00 нул 16 10 дле 32 20 48 30 0 64 40 @ 80 50 П 96 60 ` 112 70 р
 1 01 СОХ 17 11 СО1 33 21 ! 49 31 1 65 41 на 81 м 51 97 61 113 на 71 м
 2 02 STX в 18 12 ДЦ2 34 22 " 50 32 2 66 42 б 82 52 Р 98 62 б 114 72 р
 3 03 ЕТХ 19 13 дм3 35 23 # 51 33 3 67 43 с 83 53 с 99 63 с 115 73 с
 4 04 СРВ 20 14 вольтовый dc4 36 24 $ 52 34 4 68 44 Д 84 54 Т 100 64 д 116 74 Т
 5 05 enq по 21 15 НАК 37 25 % 53 35 5 69 45 85 55 65 у Е 101 е 117 75 у
 6 06 АСК сын 22 16 38 26 & 54 36 6 70 46 Ф 86 56 в 102 66 Ф 118 76 в
 7 07 бел ЭТБ 23 17 39 27 ' 55 37 7 71 47 г 57 г 67 Ш 87 103 119 77 Вт
 8 08 БС 24 18 может 40 28 ( 56 38 8 72 48 88 х 58 х 104 68 ч 120 78 х
 9 09 ХТ ЭМ 25 19 41 29 ) 57 39 9 73 49 я 89 59 г 105 69 я 121 79 г
 10 0А если 26 1А подгруппа 2А 42 * 58 3А : 74 4А 5А 6А з 106 Дж 90 Дж 122 7А з
 11 0В Вт 27 1Б ЭКУ 43 2Б + 59 3б ; 4б 75 К 91 5Б [ 107 6Б К 123 7Б {
 12 0С ФФ 28 1С ФС 44 2С , 3С 60 < 76 4С 5С л 92 \ 108 л 124 6С 7С |
 13 0d с ЧР 29 1Д ГС 45 2Д - 3Д-61 = 77 м 93 4Д 5Д ] 109 6Д 7Д М 125 }
 14 0Е ТАК 30 1Е РС 46 2Е . 62 3Е > 78 94 Н 4Э 5Э ^ 110 126 Н 6Е 7е ~
 15 0С 31 СИ 1Ф 2Ф НАС 47 / 63 3Ф ? 79 4Ф о 95 5Ф _ 111 6Ф 7Ф о 127 дель

Мы можем выписать строке с ошибкой:

00 65 1А 47 02 79 15 2е 40 18
--- --- --- --- --- --- --- --- --- ---
Нуль е суб г STX в г НАК . @ Может

или:

\0 Е ^З Г ^Б У ^У . @ ^Х

грэп и null

Чтобы ответить , почему команда grep не работает хорошо с нулями в противном случае файл ASCII, необходимо понимать, что строки в языке C, как правило, хранятся в виде связанных списков и заканчивается нулем. Поэтому, удалив нули со входа в грэп позволяет алгоритм для правильной обработки каждой строки.

+437
WRSomsky 27 окт. 2010 г., 01:54:20

Рассмотрим эти команды wget коды:

с wget -Р ~/ https://raw.githubusercontent.com/user/repo/branch/papj.sh
с wget -Р ~/ https://raw.githubusercontent.com/user/repo/branch/nixta.sh

Есть ли элегантный способ объединить разных терминалах одного и того же базового URL-адреса, как указано выше, в одной строке, а не 2 или больше?

Псевдокод:

с wget -Р ~/ https://raw.githubusercontent.com/user/repo/branch/papj.sh//nixta.sh
+423
loveubaby 30 мар. 2015 г., 10:44:44

Протокол DHCP со статическим аренду-это хороший вариант (я тоже).

Однако пришла мне в голову кое-что другое:

Debian Джесси использует выскочка.

  • С выскочкой вы можете выполнять чистую init при физическом соединении.

Или ... что если написать скрипт, который:

  • Пинги роутера - если успешно выходит
  • Если пинг unsuccesfull, выполнить ifdown и ifup
  • Может проверять, если вы вошли в систему (и если да, то не делать ifdown)
  • Ходят довольно регулярно эта сума (каждые 2 или 10 минут с помощью cron).
+421
Sumrak21 6 дек. 2018 г., 09:57:17

Я пытаюсь написать скрипт утилиты errpipe с простой API, который запускает поток stderr через фильтр. Сначала я пытался реализовать это с помощью функции подстановки процессов Баша.

#!/бин/Баш

ком="$1"
errpipe="$2"

$сом 2> >(1>&2 $errpipe)

Проблема в том, что вывод выглядит странно, когда ком не существует.

Если я тип

ш-3.2$ ./errpipe фу кошка

Я вам

ш-3.2$ ./errpipe фу кошка
ш-3.2$ ./errpipe: строка 6: фу: команда не найдена
@

с @ представляющих курсор. Иными словами, командная строка была напечатана слишком рано. Я подозреваю, что это потому, что основной скрипт не дожидаясь окончания процесса замещения до завершения процесса. Бросать в ожидание в конце скрипта не кажется, чтобы исправить проблему.

Я открыт для решения, использующего Баш, КШ, ЗШ или, возможно, какой-то сумасшедший на awk функция. Я думаю, что я знаю, как провода вместе, используя что-то вроде C или Perl, который предоставляет богатый API для управления процессами и файловыми дескрипторами, но я бы хотел, чтобы избежать использования его, если нет альтернативы.


Одно решение, которое "почти работает", чтобы воспользоваться тем, что $$ не изменяется, когда корпус вилки и перебросить сигнал на родителей, когда errpipe закончена.

#!/бин/Баш

ком="$1"
errpipe="$2"

$сом 2> >(1>&2 $errpipe; убить -SIGUSR1 $$)

пока правда; сделать
 спать 60
сделано

Это решает исходную задачу, но а) это некрасиво и Б) печатает определенный пользователем сигнал 1: 30 до расторжения, даже если у меня есть обработчик сигнала SIGUSR1 Для и C) будет бесконечный цикл, если процесс отвечает за отправку SIGUSR материнской умирает почему-то.

+421
Lance Sinclaire 19 окт. 2017 г., 02:01:50

Похоже на то, что IPMI является запрос, как попасть в ДДП каждого устройства в целевой сервер через интерфейс SMBus/I2C шине? Мне нужен драйвер для этого или модуль I2C-dev-это достаточно? Как проверить, что есть что на конечном автобусе, если у меня несколько устройств хранения данных, подключенных к серверу?

Я использую i2cdetect, чтобы проверить шину I2C, однако я не могу проверить, какие шины устройство подключено или у него есть автобусы в первую очередь. Я знаю, что мне нужен шине I2C/адаптер для определения фактического устройства с I2C. Создание с I2C клиент может сделать это, но я все еще необходимо проверить его подключение к шине и, создавая с I2C клиента делает его ограниченным для определения устройств I2C, перечисленных в id_table. Как можно больше я хочу, чтобы обнаружить все устройства хранения, независимо от того, если у него есть устройство I2C или нет.

Любые ответы будут оценены. Большое спасибо.

+390
Njideka Modibo 22 февр. 2011 г., 23:38:25

Я создал мост через существующие сетевые интерфейсы:

$ brctl addif br0 eth1 и
$ brctl addif br0 для eth2

Почему на eth1 и для eth2 теряют свои IP-адреса? В чем смысл его?

PS это в Ubuntu.

+366
alacerda 5 дек. 2010 г., 04:35:04

Я хочу создать GUI для некоторых программ командной строки, а мне нужно получить информацию из нескольких текстовых полей, например, 'Имя_пользователя', 'пароль' и галку 'автоматически?'.

Мне нужно установить конкретные переменные в мой сценарий, равной соответствующих текстовых полей ввода пользователем, например, пользователя, пасс, логин. Также он будет иметь кнопку " ОК " и "выход".

Как я могу реализовать это? Я искал в интернете и мне удалось найти только примеры с одним текстовым полем?

+353
Georges Boez 25 июл. 2019 г., 11:47:04

Вы можете использовать команду для этого

$ касания -Т $(дата +%м%д%ч%м) файл
+342
riva 17 авг. 2018 г., 05:10:15

У вас есть адаптер Broadcom BCM4360 беспроводной чипсет (14e4:43a0, версия 03), который, хотя bcm43xx чипсет, не обрабатывается в43 водителя; несвободной ДС предлагали взамен, и, кажется, единственный драйвер, который поддерживает 14e4:43a0 (см. здесь).

Это в debian jessie, как от Broadcom-STA в-переходный (см. здесь), и я верю, что под этим именем в Кали Кали-подвижного хранилище, а также. Я предлагаю вам попробовать:

$ судо apt-получить обновление
$ судо apt-получить обновление
$ судо apt-получить установку для Broadcom-STA в-переходный

После его установки, вам необходимо выгрузить все конфликтующие драйверы, которые вы загрузили (проверить с lsmod распечатывает):

$ судо команды modprobe -Р в43 в44 b43legacy ССБ brcmsmac млрд куб. м # ... и/или любые другие

Тогда нагрузка WL с судо команды modprobe ватерлинии.

+299
Francisco Zarabozo 23 июл. 2012 г., 03:17:10

Если вы используете ЗШ , то вы можете воспользоваться силой MULTIOS функцию, т. е. избавиться от тройника команда полностью:

команде uname >файл1 >файл2

просто напишите вывод команды uname к двум разным файлы: файл1 и файл2, что эквивалентно команде uname | тройник файл1 >файл2

Аналогично перенаправление стандартных входов

туалет -л <файл1 <файл2

это эквивалентно кот файл1 файл2 | туалет -л (обратите внимание, что это не совпадает с туалетом -л файл1 файл2, позже подсчитывает количество строк в каждом файле отдельно).

Конечно, вы можете также использовать MULTIOS для перенаправления выходных данных не файлы, но для других процессов, используя процесс замещения, например:

Эхо АВС > >(грэп -о) > >(тр х) > >(СЭД 'с/с/у/')
+286
AlainChiasson 17 мая 2018 г., 19:22:40

Я кодирования небольшое приложение, которое подключается к Интернету и загружает информацию с моего сервера, используя BSD-сокетов. Я посмотрел на то, где настройки прокси-сервера хранятся под Linux, но я не мог файл, содержащий эту информацию.

Я просто хочу найти этот файл, поэтому я могу прочитать настройки прокси и использовать эти настройки в моем приложении.

+282
user275822 22 апр. 2016 г., 14:55:16

Такого рода вещи является ветер с Перл.

на Perl -лне '
 Начать{ $пропустить = qр/(?:[^|]+[|])/; $, = ","; }

 карта печати { ы/[~].*[|]/,/; г/|/,/; с/,?$//Р; }
/
^[^^]+
 | (?: ЛК [|] ) \к \д+
 | (?: ЅВ2 [|] \д+ [|] ФГ[>] )\к $пропустить{2}
 | (?: ООН [|] ) \К \Д+ $пропустить{3} \д+
 | (?: Лин [|][|] $пропустить ) \К \Д+
/ХГ;

'с yourfile

Объяснение:

=> ОРС=ФС=\н => печать, если не просят => далее следует Перл код. $, => ОФС

Начать блок определяет регулярное выражение, которое пропускает один с разделителями полей. Мы можем (читай как коробка , а не возможность) этого выражения, потому что оно появляется в несколько раз позже, когда нам приходится пропускать 2 с разделителями полей, а иногда и 3. Это делает регулярное выражение выглядит менее ужасным.

В /.../ХД возвращает список всех игр (только те, которые находятся в правой В \К), то карту { ... }, совсем немного массажа и результат печатается в stdout.

Выход

S123456789,1,FG997,879.5,4,20150213,67202004164,2,BP990,879.5,12,20170413,67202004908
+281
nerolucas 3 мая 2013 г., 23:35:06

Им пытаются использовать GNU параллельно над сценарием, и я заметил, что он только начинает выход, после -JX используется х рабочих мест

# Только появляется кошка после 100 секунд
(Эхо; сна 100) | параллельно -разъема j1 --ЛБ кошка

# Начинается мгновенно
(Эхо; Эхо; сна 100) | параллельно -разъема j1 --ЛБ кошка

Первая работа должна быть запущена раньше других (потому что он будет определять все остальные задания как параллельные трубы на выходе на другой сценарий), но параллельно ждет 3 дополнительных рабочих мест

Есть ли способ изменить этот узор?

+241
Bobbie Albert Daigle 3 окт. 2019 г., 07:17:16

Отсутствие перегородки является частой причиной для необходимости восстановления в первую очередь.

Таблица раздел является наиболее распространенной / стандартный способ объявить, что диск находится в использовании (и благодаря различным типам разделов, обычно это также заявляет, что именно каждый раздел используется для).

Неразмеченного диска выглядит, как неиспользуемый диск, много программ; монтажники выбирать их для установки; разделители создавать таблицы разделов на них; легко получить повреждения в файловой системе метаданные или Лукс заголовке, если не Создать Раздел для них сами.

Если вы точно знаете, что вы делаете и имеете полный контроль над вашей среде, вы, возможно, не нужны перегородки. Хотя я все еще рекомендую вам использовать их.

+215
JaKo 14 мая 2015 г., 16:59:22

Вы могли бы быть лучше, давая пользователям возможность использовать предохранитель файловых систем для монтирования их общих ресурсов CIFS.

+173
Francisco Javier Alfonso 5 июл. 2017 г., 15:12:21

Я пытаюсь модифицировать скрипт, который берет данные из базы данных и помещает его в сообщение электронной почты, которое затем отправляется с помощью mailx. Что мне нужно сделать, это захватить дату, которая находится в первой строке тела сообщения и дату в заголовке. Эти письма вам попадает в другую систему, и единственный способ правильно искать эти письма по дате, чтобы дата из организма, как дата, заголовок. У нас иногда возникает проблема: скрипт не выполняется и мы вновь вручную запустите электронную почту. В результате, они получают штамп с текущей датой/временем, а не когда данные были изначально созданы. Я знаю, как поставить дату в тексте сообщения и/или темы, но мне нужно просто изменить дату в заголовке.

+142
moka chipampe 16 авг. 2018 г., 15:10:37

Я бы хотел, чтобы скомпилировать/установить Линукс-Либре ядра, но я не хочу использовать lilo в качестве загрузчика. поскольку у меня уже есть жратва, это возможно сделать?

+99
hwong 16 сент. 2014 г., 09:32:26

Я с помощью Emacs 24 в Ubuntu. Пожалуйста, помогите мне о том, как открыть удаленный сервер файлы?

Удаленный сервер работает под управлением CentOS. Я войдя на удаленный сервер через SSH, используя частный ключ.

Я пробовал следующие команды в Emacs 24,

Сочетание клавиш Ctrl-х клавиш Ctrl -Ф ~/СШ [email protected]:/home/prasad/test.sh

+85
chri55c 10 дек. 2014 г., 09:10:49

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil