我在使用find命令的正则表达式时遇到了麻烦.可能是我不明白在命令行上逃避的事情.
为什么这些不一样?
find -regex '.*[1234567890]'
find -regex '.*[[:digit:]]'
Run Code Online (Sandbox Code Playgroud)
Bash,Ubuntu
我有一个批处理文件,我打算分发给我们的客户来运行软件任务.
我们将它们分发为文件夹或.zip内部文件.在里面,有批处理文件和另一个文件夹,其中包含运行批处理所需的文件.
通常,在创建批处理时,键入文件所在的路径.但我不知道文件在哪里.这些文件仍将保存在主文件夹中,但我需要让批处理找到该文件夹来运行文件.
例如:如果他们在桌面上有主文件夹并且运行它,则需要"C:\Users\Username\Desktop"运行.您可以将批处理CD放到该位置.
但如果他们从文件中运行呢?我不知道用户名,所以我必须以某种方式让批处理找到这个.任何代码和/或指令都会很棒.
使用find命令,我可以显示多个级别的目录名称.以下命令显示/var深度为2的路径下的所有目录:
find /var -maxdepth 2 -type d;
Run Code Online (Sandbox Code Playgroud)
结果显示:
/var
/var/log
/var/log/sssd
/var/log/samba
/var/log/audit
/var/log/ConsoleKit
/var/log/gdm
/var/log/sa
Run Code Online (Sandbox Code Playgroud)
使用stat命令,我可以找到修改的日期时间:
stat /var/log/samba | grep 'Modify:'
Run Code Online (Sandbox Code Playgroud)
结果是:
Modify: 2014-01-02 11:21:27.762346214 -0800
Run Code Online (Sandbox Code Playgroud)
有没有办法组合这两个命令,以便列出目录与修改日期时间?
在vim中,我知道我们可以使用~大写单个字符(如本问题中所述),但是有没有办法使用vim来大写选择中每个单词的第一个字母?
例如,如果我想改变
hello world from stackoverflow
Run Code Online (Sandbox Code Playgroud)
至
Hello World From Stackoverflow
Run Code Online (Sandbox Code Playgroud)
我应该怎样在vim中做到这一点?
我想在我的目录中找到不可读的文件(例如带有gr的文件).所以我尝试了这个:
find . -perm -g-r
它向我展示了所有文件?所以我尝试了这个:
find . -perm -g+r
它只向我显示了可读文件.它似乎-perm -g-r匹配所有文件.我正在使用CentOS 5.5.难道我做错了什么?它看起来-perm -g-r没什么用处.
如何在字符串中找到给定的文本?在那之后,我想在它和其他东西之间创建一个新的字符串.例如...
如果字符串是:
This is an example string and my data is here
Run Code Online (Sandbox Code Playgroud)
我想创建一个字符串,其中包含"my"和"is"之间的任何内容,我该怎么做?对不起,这很伪,但希望它有意义.
我总是忘记我在一分钟前编辑的文件,所以我输入find . -cmin 1或者其他一些值,但它只运行了1几分钟.我不得不试试find . -ctime 2 /*or 3,4...*/.
然后我找到了另一种更好的方法:
touch -t 12251134 empty /*similar format which 5 or 10 minutes ago */
find . -newer empty
Run Code Online (Sandbox Code Playgroud)
我可以用我date -d'-5minutes' +%m%d%H%M计算时间.我想知道是否有一种简单的方法来查找1,2或3分钟前访问过的文件.
在Linux中,如何*.js以递归方式查找目录中的所有文件?输出应该是绝对路径(如/pub/home/user1/folder/jses/file.js)
这个答案对我有用:
find $PWD -name '*.js' > out.txt
Run Code Online (Sandbox Code Playgroud)
它找到所有*.js文件,输出绝对路径,将结果写入out.txt.
有没有办法将Visual Studio中的搜索(通过"查找和替换"对话框)限制为指定的文件夹或文件类型?
我试图将查找结果保存为数组.这是我的代码:
#!/bin/bash
echo "input : "
read input
echo "searching file with this pattern '${input}' under present directory"
array=`find . -name ${input}`
len=${#array[*]}
echo "found : ${len}"
i=0
while [ $i -lt $len ]
do
echo ${array[$i]}
let i++
done
Run Code Online (Sandbox Code Playgroud)
我在当前目录下获得了2个.txt文件.所以我期待'2'作为结果find.然而,它打印1.原因是它将查找的所有结果作为一个元素.我怎样才能解决这个问题?谢谢.
PS我在Stack OverFlow中找到了几个关于类似问题的解决方案.但是,它有点不同所以我可以申请我的.我需要在循环之前将结果存储到变量.再次感谢.