在我的.bashrc中,我有一个名为hello的函数:
function hello() {
echo "Hello, $1!"
}
Run Code Online (Sandbox Code Playgroud)
我希望能够从shell调用hello(),如下所示:
$ hello Lloyd
Run Code Online (Sandbox Code Playgroud)
得到输出:
> Hello, Lloyd!
Run Code Online (Sandbox Code Playgroud)
有什么诀窍?
(当然,我想到的真正功能更复杂.)
编辑:这真的是由函数中的语法错误引起的,我想!:(
function coolness() {
if[ [-z "$1"] -o [-z "$2"] ]; then
echo "Usage: $0 [sub_package] [endpoint]";
exit 1;
fi
echo "Hi!"
}
Run Code Online (Sandbox Code Playgroud) 是否有适用于Unix和Windows的命令行工具,它使用相同的算法为两个平台创建GUID?
我看过很多关于创建一个独特文件名的帖子,从天真的%TIME%到合理的(但不足)%RANDOM%.使用wmic os get localdatetime更好,但它仍然可以在多个CPU /核心机器上失败.在多核计算机上运行5+ shell时,以下脚本最终会失败.
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /L %%i IN (0, 1, 1000) DO (
FOR /F "usebackq" %%x IN (`wmic os get localdatetime ^| find "."`) do (set MYDATE=%%x)
ECHO MYDATE is now !MYDATE!
IF EXIST testuniq_!MYDATE!.txt (
ECHO FAILED ON !MYDATE!
GOTO TheEnd
)
COPY NUL >testuniq_!MYDATE!.txt
)
:TheEnd
EXIT /B 0
Run Code Online (Sandbox Code Playgroud)
有没有人有可靠的方法在shell脚本中创建一个唯一的文件名?