Как найти определенную 'строку' и распечатать целую строку?

Идентификация

Я нашел этот инструмент, который надеется быть тем, что можно использовать для идентификации файлов PDF/A. Это назвало DROID (Цифровая Рекордная и Объектная Идентификация). Это - базирующийся Java и может быть выполнено от GUI или командной строки.

выборка

DROID является программным инструментом, разработанным Национальным архивом для выполнения автоматизированной пакетной идентификации форматов файлов. Разработанный его Цифровым Отделом Сохранения как часть его более широких цифровых операций сохранения, DROID разработан для соответствия фундаментальному требованию любого цифрового репозитория, чтобы смочь определить точный формат всех хранивших цифровых объектов и связать ту идентификацию с центральным реестром технической информации о том формате и его зависимостях.

Учитывая он спонсируется Национальным архивом, я предположил бы, что это - правильный инструмент для того, чтобы сделать это, учитывая намеченную цель формата PDF/A. Также проект является открытым исходным кодом, и код доступен на GitHub, а также упакованный в двоичной форме с веб-сайта Национального архива.

Проверка и Преобразование

Если Вы ищете инструмент для выполнения проверки и преобразования, я полагаю, что PDFBox может сделать это. PDFBox перечисляет проверку PDF/A прямо на первой полосе их веб-сайта. Это - другое JAVA-приложение 8-).

выборка с веб-сайта

Проверка PDF/A
Проверьте PDFs против стандарта ISO PDF/A.

Под командной строкой инструменты разделяют слева от их основной страницы шоу следующее использование для инструмента:

$ java -jar pdfbox-app-x.y.z.jar org.apache.pdfbox.ConvertColorspace [OPTIONS]  

veraPDF является другим инструментом, способным к проверке PDF/A; это - часть Открыть ссылочного комплекта инструментальных средств Preservation Foundation's. Это - также JAVA-приложение.

Преобразование

Для того, чтобы просто сделать преобразование я нашел этот метод от сообщения в блоге названным: Свободный способ преобразовать существующий PDF в PDF/A, который использует следующие инструменты:

  • Ghostscript 8.64 только.
  • PDFBox 0.7.3
  • pdfmarks (файл для предоставления дополнительных метаданных)
  • PDFA_def.ps
  • USWebCoatedSWOP.icc

С вышеупомянутым на месте Вы используете следующую команду:

$ gs -sDEVICE=pdfwrite -q -dNOPAUSE -dBATCH -dNOSAFER     \
-dPDFA -dUseCIEColor -sProcessColorModel=DeviceCMYK       \
-sOutputFile=Out_PDFA.pdf PDFA_def.ps pdfmarks IN_PDF.pdf

Это не без, он - бородавки. Статья обсуждает одного из них, закрепляя флаги печати на гиперссылках, являющихся одним из них. Статья предоставляет JAVA-приложение, которое можно использовать для фиксации их:

$ java FixPrintFlag Out_PDFA.pdf New_verifiablePDFA.pdf

Это не симпатично, но, кажется, осуществимо. Дополнительную информацию см. в статье.

Ссылки

5
12.04.2015, 00:56
6 ответов

Обычно ~/.aspell. < lang > .pws . Например, при использовании

aspell -d pt_PT -c file

(вы используете язык pt_PT) добавленные слова будут сохранены в

$HOME/.aspell.pt_PT.pws
-121--174879-

Сеть, скорее всего, блокирует внешние запросы на порту 22.

У вас все еще есть некоторые варианты. Продолжайте, только если вы можете убедиться, что не нарушаете политику университета.

  1. Средство просмотра команды VPN

позволяет создать частную VPN. Если вы можете запустить клиент на своем лабораторном ПК, это самый простой вариант.

http://www.teamviewer.com/en/products/remotecontrol.aspx

  1. Ssh over port 443.

Это будет работать только в том случае, если компьютер не поддерживает NAT. Можно использовать порты, отличные от 22, например порт 80 или 443.

https://askubuntu.com/questions/107173/is-it-possible-to-ssh-through-port-80

-121--139529-

Ваш неловкий синтаксис немного ошибочен.

#!/bin/bash
awk -F: -v keyword="$1" '$1 == keyword {$1=$1; print}' myfile.csv

Здесь хитрость заключается в переназначении значения одного из полей вынуждает awk пересчитать $0 с помощью разделителя выходного файла. Здесь OFS по умолчанию является космосом, поэтому назначение значения $1 самому себе изменяет двоеточия на места.

Нехороший способ написать это:

grep "^$1:" myfile.csv | tr ":" " "

, но использует сопоставление регулярных выражений, а не равенство строк

9
27.01.2020, 20:33

Вот SED SED Альтернатива

sed -n '/^def:/s/:/ /gp' myfile.csv

Если вы проходите строку в качестве первого позиционного параметра:

sed -n "/^$1:/s/:/ /gp" myfile.csv
3
27.01.2020, 20:33

Через Питон.

$ python -c "import sys;
with open(sys.argv[2]) as f:
    for line in f:
        if sys.argv[1] == line.split(':')[0]:
            print ' '.join(line.strip().split(':'))" def file
def 423324 arbitrary value string

Просто запустите приведенный выше скрипт на терминале с ключевым словом поиска в качестве первого аргумента и именем файла в качестве второго аргумента.

0
27.01.2020, 20:33

Aquí hay una solución usando grep:

grep ^abc file | awk -F ":" '{print $1" " $2" " $3" " $4}'

0
27.01.2020, 20:33

Использование Raku (, ранее известного как Perl _6)

raku -ne '.put if.=split(":")[0] eq "def";' myfile.csv

ВЫХОД:

def 423324 arbitrary value string

Языковые заметки :Языки семейства Perl -используют концепцию «тематической» -переменной. Raku расширяет и упорядочивает эту концепцию (, см. ссылку Rosetta Code ниже ). Поскольку подпрограммы теперь по умолчанию используют переменную темы $_, ведущая точка — это все, что необходимо для указания действия над переменной темы $_. Написав приведенный выше код «от руки», вы действительно получите:

raku -ne '$_.put if $_.=split(":")[0] eq "def";'

Наконец, Raku предлагает.=двоичный оператор присваивания , в котором, по существу, вставленный=(знак равенства )— это все, что нужно для обновления lvalue. Таким образом, код my $temp = $_.fn(…); $_ = $temp;можно сжать до $_.=fn(…). Короче... и не нужно создавать временную переменную $temp!

https://rosettacode.org/wiki/Topic_variable#Raku
https://docs.raku.org/routine/.=
https://raku.org/

0
11.09.2021, 03:52
#!/bin/bash
input=$1
awk -v input="$input" '$0 ~ input {gsub(":"," ",$0);print }' filename

пример

 sh script.sh abc
abc 123 myname 1231
0
15.09.2021, 06:53

Теги

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