2018-04-03 21:53:57 ijiabao520 阅读数 250

exe-in-bash

在Linux子系统下运行exe,修正盘符路径,适用于sublime,notepad++或其它需要指定文件参数的GUI程序

注:

测试使用软链接即可在子系统bash中运行exe文件,如:SublimeText, 免去安装GUI和输入法
ln -sv /mnt/c/Program\ Files/Sublime\ Text\ Build\ 3143\ x64/subl.exe /usr/local/bin/subl

  • 使用时: subl ./foo/bar/file.txt
  • 但是不支持完整路径,如: subl /mnt/d/web/test.php
  • 因此写了个脚本用于转换路径

解决 (以SublimeText为例):

  • 把此文件复制并命名:/usr/bin/subl 即可
  • 应用在ubuntu子系统,如果盘符不对,根据盘符修改正则替换部分
  • 没有写软链接的转换。需要的话自行修改或参见winpath.sh
#!/bin/bash
# filename: subl-full.sh, copy to /usr/bin/subl
# by: ijiabao, fixed open file like : /mnt/d/foo/bar/file.ext
# run subl.exe in bash ^_^
get_win_path () {
    path=`dirname "$1"`
    file=`basename "$1"`
    full="$(cd $path; pwd)/$file"
    echo $full | sed -e 's@^/mnt/\(\w\)/@\1:/@' -e 's@/@\\@g'
}
# exe文件路径需手动修改
/mnt/c/Program\ Files/Sublime\ Text\ Build\ 3143\ x64/subl.exe `get_win_path $1`

另附,多个脚本快速建立:

winpath.sh

  • 把参数1指定的路径/文件转换为windows的下完整路径
  • 下载并放在/usr/bin/usr/local/bin 命名 winpath
  • windows的盘符一定挂载规则 /mnt/c, /mnt/d..
  • 经常使用centos/fc系列,ubuntu还有点不习惯……

使用 (以SublimeText为例):

  • subl.sh => /usr/bin/subl 即可(其中的exe文件路径自已修改)
  • using subl foo/bar/file.ext or subl /mnt/d/foo/bar/file.ext
#!/bin/bash
# file:subl.sh
/mnt/c/Program\ Files/Sublime\ Text\ Build\ 3143\ x64/subl.exe `winpath $1`

Notepad++:

  • npp.sh => /usr/bin/npp
  • using npp foo/bar/file.ext or subl /mnt/d/foo/bar/file.ext
#!/bin/bash
# run notepad++.exe in bash ^_^
/mnt/c/Program\ Files/Notepad++/notepad++.exe `winpath $1`

php,cpmposer,svn,git:

  • 无GUI, sudo apt-get install ……
2019-06-12 11:41:00 denghe4720 阅读数 641

首先要了解一下Wine:

Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,Mac OSX 及 BSD 等)上运行 Windows 应用的兼容层。

那么安装wine就可以了。

1、安装需要的软件包:

yum groupinstall 'Development Tools'           //安装开发工具,耗时较长
yum install libX11-devel freetype-devel zlib-devel libxcb-devel     //安装开发工具库

2、下载并解压Wine包

下载地址:https://sourceforge.net/projects/wine/files/Source/ 各个版本都有,这里直接在linux中下载
cd /usr/src //下载文件的目录,可自行选择
wget https://excellmedia.dl.sourceforge.net/project/wine/Source/wine-3.7.tar.xz //下载
tar -xvJf ./wine-3.7.tar.xz //解压

3、安装wine,耗时很长很长,30分钟以上

cd wine-3.7

64位安装方法:注意是三条命令

./configure -enable-win64

make

make install

32位安装方法:注意是三条命令

./configure

make

make install

如果缺包,导致执行./configure --enable-win64报错,执行以下命令后解决了:

yum install flex.x86_64

yum install bison.x86_64

注意:安装时间会比较长,耐心等待。

4、安装成功后,用 wine 命令,检测:

32位系统

wine –version

64位系统

wine64 –version

centos7.0成功安装wine无法使用,执行以下命令试试:

sudo ln -s /usr/local/bin/wine64 /usr/local/bin/wine

5、Wine怎么用

使用如下命令运行你的程序,有些程序可能需要root权限:

wine xxx.exe

 若出现:

wine: Bad EXE format for Z:\D\LYServer\erl7.3.exe.

是你的.exe文件不是64的问题

 

转载于:https://www.cnblogs.com/zeussbook/p/11008667.html

2019-02-19 10:52:11 wangchaox123 阅读数 517

SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。

列出SecureCRT文件上传时SFTP命令汇总:

cd 路径                    更改到远程目录的路径
lcd 路径                   更改到本地目录的路径
chgrp group path           将文件path的组更改为group
chmod mode path            将文件path的权限更改为mode
chown owner path           将文件path的属主更改为owner
exit                       退出 sftp
help                       显示这个帮助文本
get [远程路径] [本地路径]    下载文件
ln existingpath linkpath   符号链接远程文件
ls [选项] [路径]            显示远程目录列表
lls [选项] [路径]           显示本地目录列表
mkdir 路径                 创建远程目录
lmkdir 路径                创建本地目录
mv oldpath newpath         移动远程文件
open [用户@]主机[:端口]      连接到远程主机
put[本地路径] [远程路径]     上传文件
pwd                        显示远程工作目录
lpwd                       打印本地工作目录
quit                       退出 sftp
rmdir 路径                 移除远程目录
lrmdir 路径                移除本地目录
rm 路径                    删除远程文件
lrm 路径                   删除本地文件
symlink existingpath linkpath   符号链接远程文件
version                   显示协议版本

 

使用SecureCRT进行文件上传的步骤:

a.打开SecureCRT并且登录上Linux服务器,按Alt+p弹出SFTP文件上传或下载窗口

b.进入Linux服务器/opt目录,输入“put D:/jdk-7u45-linux-x64.tar.gz”命令回车上传

c.执行ls查看/opt目录的文件列表

最后:观察b步骤命令执行情况,整个上传过程只用了3秒,速度相当快。

使用SecureCRT进行文件下载的步骤:

a.打开SecureCRT并且登录上Linux服务器,按Alt+p弹出SFTP文件上传或下载窗口

b.进入相关文件目录,输入get jdk-7u45-linux-x64.tar.gz

c.查看本地目录是否存在该文件

2019-10-11 17:00:04 stone_ui 阅读数 12

根目录 /

所有文件为挂在上的

进入文件加 cd /

查看文件列表 管理员可以使用 ll      所有用户可以使用ls     ls -al 

linux 装的软件是装在所有文件夹下

bin  二进制可执行文件     exe(ls丶ll之类可执行命令)

boot 系统启动文件

dev 系统设备文件(打印机等)

etc 系统配置文件 [host文件(域名解析之类的文件)丶mysql  my.ini  my.cfg]

home  用户

lib  所需要的依赖包

opt   额外安装的可选应用包所放的位置

proc  虚拟文件系统 存放当前内存映射提高效率

root  超级管理员目录

sbin  二进制可执行文件     exe(ls丶ll之类可执行命令)专门给root使用 别人没权限

usr 系统应用程序  比较重要的目录   /usr/local  本地管理员安装的目录

var 用于存放运行时需要改变数据的文件(存放数据库的目录)

 

 

常用操作目录指令说明

linux 下以 . 为开头的都是隐藏文件

mkdir -p 父目录不存在时生成

touch 生成文件

cat 读出文件

echo hellocentOS > hello.txt (生成一个内容为hellocentOS 的hello.txt 文件) >> 追加内容

cp 【被copy文件】【 目标目录】  mv 为剪切功能 跟cp一样

rm -rf 【文件夹】

find -name 【文件名】

在指定文件中查找字符串    grep 【字符串】 【文件命】

ln 【创建位置】 【目标文件】 创建软连接

more 分页显示 和cat是一个用法   ctrl+c 终止执行

ctrl+insert 复制  shift+insert 粘贴

 

 

控制台(进程) 一个应用程序为一个进程 每一个应用程序至少一个线程

主线程 (同步执行)会发生阻塞

工作线程 (异步执行)

 

 

系统管理命令

stat 显示的比ll丶ls详细

who 显示当前在线登录用户

hostname 主机名

top 任务管理器 查看占用情况

交换空间

内存1gb -> 磁盘1gb swap空间(内存溢出 阻塞死机

云服务器没有交换空间

 

ps 显示瞬间进程状态  ps -ef|grep 【运行的mysql 之类的进程】   grep 是Linux 下的文本过滤工具

du 当前路径下用了多少字节空间  du -h  h给人看的

df  文件系统占用多少空间

free  内存 和 交换空间

kill -9 【进程号 pid】 彻底杀死进程

 

开关机命令

重启 reboot   shutdown -r now

关机 shutdown -h now

 

压缩命令

tar包 经常用

tar 【-cxzjvf】压缩包名字  要压缩的文件

gz bz 两种压缩算法,后缀名也不一样。

tar -czvf my.tar.gz .

tar -cjvf my.tar.bz2 .

-c压缩 -x解压 -z用gzip压缩 -j用bzip2压缩 -v显示文件列表 -f使用文件名 -tf

 

文件编辑器

 vim 和 nano

:q   :wq   :q!  

2018-05-11 20:39:48 u012461090 阅读数 1716

直接来一个简单的Java程序调用Linux下的可执行文件,当然此java程序应该运行在Linux系统下的。

代码片段如下:

//"sh " + script + " " + args;
            String commond = "简单的程序指令,如果复杂,貌似是字符串数组"
            //执行Linux命令,子线程执行,生成标准化文件
            Process process = Runtime.getRuntime().exec(commond);
            //此Process对象表示的子进程的退出值。 按照惯例,值0表示正常终止。
            //调用此方法保证同步调用
            int waitFor = process.waitFor();
            //System.out.println("调用标准化程序返回值"+waitFor);
            //按照约定,值0表示正常终止。
            if(waitFor>=0){
                //调用成功
            }else{
                //调用失败
            }
没有更多推荐了,返回首页