使用以下grep语法,我想匹配文件中的所有 IP 地址(来自ksh脚本)
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file
Run Code Online (Sandbox Code Playgroud)
问题:它还匹配具有超过 4 个八位字节的单词 (IP):
1.1.1.1.1
Run Code Online (Sandbox Code Playgroud)
或者
192.1.1.1.160
Run Code Online (Sandbox Code Playgroud)
如何将有效IP 和仅具有 4 个八位字节的 IP 地址匹配?如果grep不起作用,我也可以使用 Perl——一种单行语法解决方案。
当我在 Linux 机器上使用 unzip 命令并且 ZIP 下的文件已经存在于我的本地目录中时,我得到了一个交互式问题:(如果我想用我的 Linux 机器上的现有文件替换 ZIP 中的文件
如何在没有这个交互式问题的情况下使用 unzip 命令?
[@superuser]# ls -ltr
total 0
-rw-r--r-- 1 root root 0 Nov 15 15:13 all_my_files1
-rw-r--r-- 1 root root 0 Nov 15 15:13 all_my_files2
[@superuser]# unzip MY_FILES.zip
Archive: MY_FILES.zip
replace all_my_files1.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
inflating: all_my_files1.txt
inflating: all_my_files2.txt
Run Code Online (Sandbox Code Playgroud) 为什么该scp命令不将链接从本地计算机复制到另一台计算机?
scp -rp dir linux:/dir_target
Run Code Online (Sandbox Code Playgroud)
当我在源目录中同时拥有文件和链接时,如何复制链接?
我编写了以下 awk 脚本:
% echo /var/sysconfig/network/my_functions alpha beta gama | \
awk -v word=alpha '$2 == word { print $0 }'
Run Code Online (Sandbox Code Playgroud)
如何告诉 awk 我想打印除 $1 (/var/sysconfig/network/my_functions PATH ) 之外的所有行,这样我会得到以下信息:
alpha beta gama
Run Code Online (Sandbox Code Playgroud)
代替
/var/sysconfig/network/my_functions alpha beta gama
Run Code Online (Sandbox Code Playgroud)
备注:行内容可以是任何内容,不受字符串/字数限制
使用 file 命令,我需要验证许多文件是 ASCII 还是其他格式
有时我从文件命令中得到:
file1: ASCII English text
Run Code Online (Sandbox Code Playgroud)
有时我从文件命令得到不同的答案
file2: Non-ISO extended-ASCII English text, with very long lines
Run Code Online (Sandbox Code Playgroud)
我真的不确定是否还有其他语法不同的答案
我的问题是:
我编写了以下 ksh 语法来验证文件是否为 ASCII,但我不确定
以下语法是验证 ASCII 格式的最佳语法?
[[ ` file $some_file | grep –c ASCII ` = 1 ]] && print "you have ascii file for sure"
Run Code Online (Sandbox Code Playgroud)
如果有人有其他建议来确定验证 ASCII 格式!,我会很高兴看到