HP-UX ***** B.11.23 U ia64 **** 无限制用户许可证
find . -type d -name *log*?|?xargs ls -la
Run Code Online (Sandbox Code Playgroud)
给我目录名称(包含log
在目录名称中的名称),后跟该目录中的所有文件。
目录?/var/opt/SID/application_a/log/
,?/var/opt/SID/application_b/log/
,?/var/opt/SID/application_c/log/
等等包含日志文件。
我只希望ls
命令列出两个最新的日志文件,我通常使用ls -latr?|?tail -2
.
输出必须是这样的..
find . -type d -name *log*?|?xargs ls -la
Run Code Online (Sandbox Code Playgroud)
find . -type d -name *log*?|?xargs ls -la?|?tail -2
没有给我上面的结果。我得到的是最后两个find . -type d -name *log*?|?xargs ls -la
命令文件的列表
。
那么我可以在管道之后管道命令xargs
吗?我如何查询,以获取上述格式的结果文件列表?
/var/opt/SID/application_a/log/
-rw-rw-rw- 1 user1 user1 59698 Jun 11 2013 log1
-rw-rw-rw- 1 user1 user1 59698 Jun …
Run Code Online (Sandbox Code Playgroud) 该文件的大小为 962,120,335 字节。
HP-UX ******B.11.31 U ia64 ***** 无限制用户许可证
hostname> what /usr/bin/awk
/usr/bin/awk:
main.c $Date: 2009/02/17 15:25:17 $Revision: r11.31/1 PATCH_11.31 (PHCO_36132)
run.c $Date: 2009/02/17 15:25:20 $Revision: r11.31/1 PATCH_11.31 (PHCO_36132)
$Revision: @(#) awk R11.31_BL2010_0503_1 PATCH_11.31 PHCO_40052
hostname> what /usr/bin/sed
/usr/bin/sed:
sed0.c $Date: 2008/04/23 11:11:11 $Revision: r11.31/1 PATCH_11.31 (PHCO_38263)
$Revision: @(#) sed R11.31_BL2008_1022_2 PATCH_11.31 PHCO_38263
hostname>perl -v
This is perl, v5.8.8 built for IA64.ARCHREV_0-thread-multi
hostname:> $ file /usr/bin/perl
/usr/bin/perl: ELF-32 executable object file - IA64
hostname:> $ file /usr/bin/awk
/usr/bin/awk: ELF-32 executable …
Run Code Online (Sandbox Code Playgroud) HP-UX *** B.11.31 U ia64 ***无限用户许可证
我想将当前目录中名为 abc.txt 的文件移动到名为 ./begperl 的目录。当我这样做时,我希望文件的移动版本被命名为 ab.txt。我想要的是从文件名中删除预定义的字符串并移动它,并根据第三个变量 = Y/ 删除原始文件N。我尝试过下面的oneliners但没有成功。
awk -v name=abc.txt -v dir=begperl 'BEGIN{ renamed_var=substr("c", "", name);system("mv " name "./"dir/renamed_var)}'
awk -v name=abc.txt -v dir=begperl 'BEGIN{ renamed_var=substr("c", "", name); print renamed_var}'
awk -v name=abc.txt -v dir=begperl 'BEGIN{ print substr("c", "", name) }'
awk -v name=abc.txt -v dir=begperl -v variable_two=substr("c", "", name){print variable_two}'
awk -v name=abc.txt -v dir=begperl -v variable_two=substr("c", "", name){print variable_two}'
Run Code Online (Sandbox Code Playgroud)
我唯一能工作的班轮是
awk -v name=abc.txt -v dir=begperl 'BEGIN{ system("mv " name " …
Run Code Online (Sandbox Code Playgroud) 什么是shell脚本的散列字符超出评论或使用它们的用途$#
; 还有什么其他用途?
我希望能够grep
在散列之前查看每一行的内容,因为在代码的同一行中有注释。
应用上下文主要是korn shell,我使用的系统是“HP-UX ***B.11.31 U ia64 *****unlimited-user license”。