Только не устанавливайте одинаковые права доступа к каталогу и файлам в нем:
$ chmod g+rx directory/
$ chmod g= directory/*
Здесь члены группы могут вводить и просматривать каталог, но не смогут читать файлы в нем.
Правка: что касается вашего нового заголовка, я бы предложил:
$ chmod a+rx directory/
$ chmod u=rwX,g=rX,o= *
Эквивалент в BSD
или OSX
-
$ du -ah simpl | sort -dr | head -6
-121--4559- Можно использовать уже имеющийся код. Сохранить линию во множество и матч для Пятого элемента:
while read -r line; do
[ -z "$line" ] && continue
patlist=($line)
pat=${patlist[4]}
grep "$pat" --label="$line" -H < KEGG.annotations
done < allKO.txt
прибыль:
Metabolism Carbohydrate metabolism Glycolisis K07448:>aai:AARI_33320 mrr; restriction system protein Mrr; K07448 restriction system protein
Metabolism Protein metabolism protesome K02217:>aai:AARI_26600 ferritin-like protein; K02217 ferritin [EC:1.16.3.1]
Это, кажется, делает то, что вы, кажется, просят:
while read w1 w2 w3 w4 ID
do
printf "%s " "$w1 $w2 $w3 $w4 $ID"
if ! grep "$ID" KEGG.annotations
then
echo
fi
done < allKO.txt
Это будет писать вывод на экран.
Добавить вывод (>
) перенаправление (например, > Test1
) до последней строки
Чтобы захватить вывод в файле.
Allko.txt
, поэтому мы прочитали ID W1 W2 W3 W4
.
Вы говорите, что это файл разделите вкладки; Я предполагаю, что ни один из областей не содержит пробелов. Printf
) Линия (то есть поля) из ALLKO.TXT
,
с пространством в конце, но нет завершения новой строки. GREP
) kegg.annotations
файл для идентификатора
(Пятое поле из линии из ALLKO.TXT
).
Это будут полные строки (в том числе в Newlines). GREP
не удается, напишите новую строку, поскольку Printf
не сделали. Это приведет к строкам, идентификатор которых нет в kegg.annotations
Быть просто написанным на выходе:
метаболизм белкового метаболизма протеасомы K02217> AAI: AARI_26600 Ферритин белок; K02217 Ferritin [EC: 1.16.3.1]
Этот идентификатор не существует: K99999
и идентификаторы, которые существуют более одного раза, написаны как дополнительные строки
(Не повторяя данные из ALLKO.TXT
):
Метаболизм белковый метаболизм протеасомы K02217> AAI: AARI_26600 Ферритин белок; K02217 Ferritin [EC: 1.16.3.1]
Это гипотетическая дополнительная линия от Kegg.annotations, которые упоминают «K02217».