readlink -f ${0}
时间: 2024-06-06 09:07:03 浏览: 145
As an AI language model, I do not have access to the file system of the machine I am running on, so I cannot execute the `readlink -f ${0}` command or any other command that requires access to the file system. However, in general, the `readlink -f ${0}` command is used to obtain the absolute path of the script or executable file that is being executed. The `${0}` parameter refers to the name of the current script or executable file, and `readlink -f` resolves any symbolic links and returns the absolute path of the file.
相关问题
$ readlink -f $(which javac) | sed "s:/bin/javac::"找不到
如果 `readlink -f $(which javac) | sed "s:/bin/javac::"` 命令找不到 JDK 安装路径,您可以尝试以下方法:
1. 如果您已经安装了 JDK,请确保 JAVA_HOME 环境变量已经正确设置。您可以在终端中输入 `echo $JAVA_HOME` 命令来检查环境变量是否已经设置。如果命令没有输出,则说明 JAVA_HOME 没有设置或者设置不正确。
2. 如果您没有安装 JDK,则需要先安装 JDK。您可以在终端中运行以下命令来安装 OpenJDK:
```bash
$ sudo apt update
$ sudo apt install openjdk-8-jdk
```
如果您使用的是其他 Linux 发行版,请根据其官方文档来安装 OpenJDK。
3. 安装完成后,您可以使用以下命令来查找 JDK 的安装路径:
```bash
$ readlink -f $(which java) | sed "s:/bin/java::"
```
如果您成功找到了 JDK 的安装路径,则将该路径添加到 JAVA_HOME 环境变量中。您可以使用以下命令来编辑 ~/.bashrc 文件并添加 JAVA_HOME 环境变量:
```bash
$ echo "export JAVA_HOME=<JDK 安装路径>" >> ~/.bashrc
$ source ~/.bashrc
```
将 `<JDK 安装路径>` 替换为您找到的 JDK 安装路径。
4. 现在,您可以再次使用 `readlink -f $(which javac) | sed "s:/bin/javac::"` 命令来查找 JDK 安装路径。如果命令成功输出 JDK 的安装路径,则您已经成功设置了 JAVA_HOME 环境变量。
请将下列shell语句转换为python语句:if [ ${stage} -le 5 ] && [ ${stop_stage} -ge 5 ]; then # Training mkdir -p $dir INIT_FILE=$dir/ddp_init rm -f $INIT_FILE # delete old one before starting init_method=file://$(readlink -f $INIT_FILE) echo "$0: init method is $init_method" num_gpus=$(echo $CUDA_VISIBLE_DEVICES | awk -F "," '{print NF}') # Use "nccl" if it works, otherwise use "gloo" dist_backend="nccl" cmvn_opts= $cmvn && cmvn_opts="--cmvn data/${train_set}/global_cmvn"
```python
import os
if stage <= 5 and stop_stage >= 5:
# Training
os.makedirs(dir, exist_ok=True)
INIT_FILE = f"{dir}/ddp_init"
os.remove(INIT_FILE) if os.path.exists(INIT_FILE) else None # delete old one before starting
init_method = f"file://{os.path.realpath(INIT_FILE)}"
print(f"{__file__}: init method is {init_method}")
num_gpus = len(os.environ["CUDA_VISIBLE_DEVICES"].split(","))
dist_backend = "nccl" if "nccl" in torch.distributed.available_backends() else "gloo"
cmvn_opts = ""
if cmvn:
cmvn_opts = "--cmvn data/{train_set}/global_cmvn"
```
注意:在 Python 中,使用 os.makedirs() 函数创建目录,使用 os.remove() 函数删除文件。在这个例子中,我们使用了 f-string 来将变量插入到字符串中。由于 $0 在 shell 中表示脚本名称,因此在 Python 中可以使用 __file__ 来表示当前脚本名称。在 Python 中,使用 os.path.realpath() 函数获取文件的绝对路径。
阅读全文