网站首页 > linux / 正文
#写一个shell脚本mkfile.sh,可以根据用户输入创建可执行文件,并添加别名命令mkfile
## 一、需求描述
linux当使用touch 或者 直接 vim 创建文件时,必须给文件赋予执行权限,才能执行此文件,即:
touch aaa.sh
chmod +x aaa.sh 。
我们可以自已写一个shell脚本,如:mkfile.sh,并编辑脚本,让此脚本可以根据用户输入直接创建可执行文件,并把此脚本命令添加别名命令mkfile到自己的 .bashrc 或者 .bash_profile 文件中。
使用效果如下图:
## 二、创建步骤:
### 1、创建并编辑 mkfile.sh 脚本文件,并赋予它执行权限。
```bash
touch mkfile.sh
chmod +x mkfile.sh
#文件内容如下:
#!/bin/bash
#根据用户输入创建可执行文件的自定义命令mkfile.sh
# #1 是命令后空格紧跟用户输入。而 #read filename #是回车换行读取用户输入
filename=$1
#检查文件名是否存在
if [ -e "$filename" ]; then
echo "错误:文件 '${filename}' 已存在。"
exit 1
fi
#检查用户输入的文件名不能为空
if [ -z "$filename" ]; then
echo "错误:文件名不能为空。"
exit 1
fi
#创建可执行文件 或者直接执行命令: #touch "$1"
cat << EOF > "${filename}"
#!/bin/bash
EOF
#赋予文件执行权限。或者直接执行命令:chmod +x "$1"
chmod +x "${filename}"
#输出结果
#echo "文件 '${filename}' 已创建成功,并赋予了执行权限。"
#输出结果,并判断创建的文件是否具有执行权限
if [ -x "$1" ]; then
echo "文件 '$1' 已创建,并赋予了执行权限。"
else
echo "创建文件 '$1' 失败。"
fi
```
### 2、给 mkfile.sh 赋予执行权限,并运行测试。
```bash
chmod +x mkfile.sh
```
### 3、添加别名命令mkfile到自己的 .bashrc 或者 .bash_profile 文件中。
```bash
#添加别名
vim ~/.bashrc
#内容如下:
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias cls='clear'
alias user='/root/test1/test15.sh'
alias mkfile='/root/test1/mkfile.sh'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
#使用别名生效
source ~/.bashrc
```
### 4、测试别名命令 mkfile 成功创建可执行文件 bbb.sh。
```bash
mkfile bbb.sh
```
Tags:linux创建用户命令
猜你喜欢
- 2024-11-26 以其他用户的身份执行Linux命令
- 2024-11-26 Linux常用指令简介(1):用户和权限管理
- 2024-11-26 Linux记录用户操作命令
- 2024-11-26 Linux开机自启动程序配置,适用于webman命令行启动的程序
- 2024-11-26 Linux建立软/硬链接文件(ln命令)
- 2024-11-26 Linux基础之创建运行脚本
- 2024-11-26 Linux系统如何设置开机自动运行脚本?
- 2024-11-26 Linux创建新用户并使用证书远程登录
- 2024-11-26 linux批量添加用户
- 2024-11-26 每日一个Linux命令解析——newusers