我想分别获取文件名(没有扩展名)和扩展名.
我到目前为止找到的最佳解决方案是:
NAME=`echo "$FILE" | cut -d'.' -f1`
EXTENSION=`echo "$FILE" | cut -d'.' -f2`
Run Code Online (Sandbox Code Playgroud)
这是错误的,因为如果文件名包含多个.
字符,它将不起作用.如果,让我们说,我有a.b.js
,它会考虑a
和b.js
,而不是a.b
和js
.
它可以在Python中轻松完成
file, ext = os.path.splitext(path)
Run Code Online (Sandbox Code Playgroud)
但是如果可能的话,我宁愿不为此启动Python解释器.
有更好的想法吗?
我需要编写一个脚本,用不同的参数启动我的程序,但我是Bash的新手.我这样开始我的程序:
./MyProgram.exe Data/data1.txt [Logs/data1_Log.txt]
.
这是我想要做的伪代码:
for each filename in /Data do
for int i = 0, i = 3, i++
./MyProgram.exe Data/filename.txt Logs/filename_Log{i}.txt
end for
end for
Run Code Online (Sandbox Code Playgroud)
所以我真的很困惑如何从第一个创建第二个参数,所以它看起来像dataABCD_Log1.txt并启动我的程序.非常感谢帮助.
PS我知道那里有类似的问题,但我没有发现创建我的日志文件名称.
我想.htaccess
手动创建一个文件,发现它似乎不可能通过Windows UI.我收到一条.
消息.必须有一种方法来创建文件.作为Windows中的前缀.
这可以手动完成吗?
可能重复:
读取文件夹中的所有文件
我需要创建一个列表,其中包含文件夹中所有文件的名称.
例如,如果我有:
000.jpg
012.jpg
013.jpg
Run Code Online (Sandbox Code Playgroud)
我想将它们存储为ArrayList
with [000,012,013]
值.
在Java中最好的方法是什么?
PS:我在Mac OS X上
给定一个字符串文件路径/foo/fizzbuzz.bar
,如何使用bash只提取fizzbuzz
所述字符串的一部分?
我知道/在Linux中是非法的,以下在Windows中是非法的(我认为) *
.
"
/
\
[
]
:
;
|
,
*
我还缺少什么?
但是,我需要一个全面的指南,并且需要考虑双字节字符.链接到外部资源对我来说没问题.
我需要首先使用可能包含禁用字符的名称在文件系统上创建一个目录,所以我打算用下划线替换这些字符.然后我需要将此目录及其内容写入zip文件(使用Java),因此有关zip目录名称的任何其他建议将不胜感激.
给定这样的文件名:
/the/path/foo.txt
bar.txt
Run Code Online (Sandbox Code Playgroud)
我希望得到:
foo
bar
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?
#!/bin/bash
fullfile=$1
fname=$(basename $fullfile)
fbname=${fname%.*}
echo $fbname
Run Code Online (Sandbox Code Playgroud)
什么是正确的方法呢?