我有一个shell脚本,可以在这样的文件夹中打印appimage文件名
#! /bin/bash
Dir="$HOME/Applications/"
Dir2="$HOME/Downloads/"
cd -P "$Dir"
for f in *.AppImage; do
z=$(echo $f | head -n1 | awk '{print $1;}')
echo $z
done
现在输出如下:
Altus-4.8.5-x86_64.AppImage
GitHubDesktop-linux-3.2.0-linux1.Ap
我是Linux的新手,我一直在尝试运行一个脚本,它使用ImageMagick的convert处理文件夹中的所有文件(我宁愿在Shell中完成这项任务,也不愿使用mogrify,因为据我所知,它不会保存不同的文件)。这些文件必须按照“最后修改”的顺序处理,所以我使用了以下代码:
for file in `ls -1tr {*.jpg,*.png}`; do
# imagemagick processes with the filename...
done
这段代码用于带有空格的文件,根据的说法,使用ls是错误的。
我也尝试过的这个解决方案,但显然我完全错了(它引发了一个“模棱两可的重定向
这可能是一个重复的问题,但我有点卡住了:我有一个包含以下内容的文件test.txt:
# To push each commit to a remote, put the name of the remote here.
# (eg, "origin" for git). Space-separated lists of multiple remotes
# also work (eg, "origin gitlab github" for git).
PUSH_REMOTE=""
我只想将包含PUSH_REMOTE=""的文件中
我对数据进行了如下排序:
a
a f
b
c
c e
d
f z
本质上,这些行是同一事物的别名列表,它们需要合并。这是简化的。在实际情况下,如果这很重要,我将处理已经移动的文件,并且需要知道哪些文件实际上是相同的。输入包含初始文件的1列和重命名文件时的2列。寻找这样的输出:
a f z
b
c e
d
这是典型Linux系统上的bash脚本,所以任何标准工具都可以。到目前为止,我已经尝试了一些关于这个问题的其他问题的awk脚本,但是没有找到好的结果。
假设在linux中有一个文件,它的行用空格分隔。
例如:
This is linux file
This is linux text
This is linux file 1
This is linux file 3
现在我只想打印那些在文件行中有第5列的行。在本例中,我的输出应该是第3行和第4行(其中1和3作为第5列)
做这件事最好的方法是什么?
我有很多文本文件,我想在linux中创建一个bash脚本,在每一行文件中打印文件名。例如,我有lenovo.txt文件,我希望文件中的每一行都以lenovo.txt开头。
我试着为这个做一个" for“,但没有起作用。
for i in *.txt
do
awk '{print '$i' $0}' /var/SambaShare/$i > /var/SambaShare/new_$i
done
谢谢!
我试着用awk分割列来打印一个句子,但是第一个列有空格。
我的初学者代码示例:
$ awk '/Linux/ { print "The filename","\""$1"\"","is located in",$2 }' test.txt
The filename "The" is located in test
The filename "Some" is located in file
The filename "File" is located
我有一个巨大的logfile1 (Linux),其日期格式如下&我想提取过去24小时的数据,并使用shell脚本写入不同的文件。请帮我完成这项任务?
----------
03/03/2016 05:40:42 AM QWTRAB1 AMQ7315: Failed to put message to accounting queue. Reason(2053
----------
03/03/2016 05:40:42 AM QWTRAB1 AMQ7315: Failed to put message to accounting queue. Reason(2053
---------