linux 中wps命令行使用
wps命令行使用的问题
关于wps 命令行通过终端执行:wps --help
并没有返回任何帮助信息
在网上找了一些关于wps的linux命令行使用:
最后发现:wps命令可以打开:word、wps、et、excel、ppt、pdf等等。
打开文档
打开终端输入:wps test.word
遗留问题:首次打开wps需要手动确认协议,目前没有办法通过命令跳过。应该是在配置文件中,目前没有找到相关资料。
这个时候终端会阻塞,因为你打开了一个wps进程没有关闭。所以我们需要后台运行
后台运行
打开终端输入:nohup wps test.word >> ./log.txt 2>&1 &
想关掉你打开的窗口
我们看一下wps
没有打开任何文件时候,有关wps
的进程:
当我们打开一个234.et
文件的时候多了几个进程:
不关闭wps,我们手动继续打开一个test.word文档,发现ps查看进程找不到有关test.word的。这个时候你想通过命令单独关闭test.word基本上不可能了。当然命令行每次执行wps 命令都会单独拉起
我们直接kill -9 /opt/kingsoft/wps-office6.... 文件路径
掉这个进程wps窗口也就关闭了。在两台机器测试,发现有的时候中间会多一个/prometheus
有的时候又没有,所以我们直接忽略掉前面的信息,直接ps -ef|grep 文件名
,然后kill -9 pid
。代码如下:
# wps打开文件
wps_open_file(){
file_name=$1
# 后台打开wps文件,防止阻塞进程
nohup wps $file_name >> ./log.txt 2>&1 &
sleep 10s
# 判断进程已经被打开后,关闭
process_name="$file_name"
process_id=$(ps aux | grep -v grep | grep "$process_name" | awk '{print $2}')
if [ -z "$process_id" ]; then
echo "进程不存在或未找到"
else
echo " 进程 $process_name 的PID为: $process_id"
echo " 即将关闭该文件..."
kill -9 $process_id
fi
}