Server IP : 127.0.0.2 / Your IP : 3.22.223.160 Web Server : Apache/2.4.18 (Ubuntu) System : User : www-data ( ) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : disk_free_space,disk_total_space,diskfreespace,dl,exec,fpaththru,getmyuid,getmypid,highlight_file,ignore_user_abord,leak,listen,link,opcache_get_configuration,opcache_get_status,passthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,php_uname,phpinfo,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,pclose,popen,proc_open,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,source,show_source,system,virtual MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/bin/ |
Upload File : |
#!/bin/sh # # Script to make drag and drop in KDE possible #set -x # CONFS=$(kde-config --path config | tr ':' ' ') CONF_FILE=kantiwordrc mapping= # default output format is PDF format="-a" ext=pdf for i in $CONFS; do if [ -r "$i/$CONF_FILE" ]; then ENCODING=$(grep ^encoding "$i/$CONF_FILE" | tr -d '[:blank:]' | cut -d '=' -f 2) if [ -f "/usr/share/antiword/$ENCODING.txt" ]; then mapping="-m $ENCODING.txt" fi FORMAT=$(grep ^output_format "$i/$CONF_FILE" | tr -d '[:blank:]' | cut -d '=' -f 2) if [ "$FORMAT" = "PS" ]; then # switch to output format PS, Cyrillic is better supported format="-p" ext=ps fi break fi done DESKTOP=$(kde-config --userpath desktop) if [ $# -lt 2 ]; then echo "Would you like to install an icon on your Desktop, where you" echo "will be able to drop an *.doc file on to? It will be displayed" echo "as a PDF document or as plain text (if no PDF viewer available)." echo -n "[Y/n]: > " read n if [ "x$n" = "xy" ] || [ "x$n" = "xY" ] || [ "x$n" = "x" ]; then if [ -r /etc/papersize ]; then n=$(cat /etc/papersize) fi if [ "x$n" != "xa4" ] && [ "x$n" != "xletter" ]; then echo echo "Type" echo "'a' for output papersize A4," echo "'l' for letter or" echo "'n' for cancel." echo -n "[a/l/N]: > " read n fi if [ "x$n" = "xa" ] || [ "x$n" = "xa4" ]; then cp -f /usr/share/antiword/kantiword.eu.desktop "$DESKTOP/kantiword.desktop" elif [ "x$n" = "xl" ] || [ "x$n" = "xletter" ]; then cp -f /usr/share/antiword/kantiword.us.desktop "$DESKTOP/kantiword.desktop" fi fi exit 0 fi # Determine the temp directory if [ -d "$TMPDIR" ] && [ -w "$TMPDIR" ]; then tmp_dir="$TMPDIR" elif [ -d "$TEMP" ] && [ -w "$TEMP" ]; then tmp_dir="$TEMP" else tmp_dir="/tmp" fi # Try to create the temp files in a secure way if [ -x /bin/tempfile ]; then out_file=$(/bin/tempfile -d "$tmp_dir" -p antiword -s ".$ext") || exit 1 err_file=$(/bin/tempfile -d "$tmp_dir" -p antiword -s ".err") txt_file=$(/bin/tempfile -d "$tmp_dir" -p antiword -s ".txt") if [ $? -ne 0 ]; then rm -f "$out_file" exit 1 fi elif [ -x /bin/mktemp ]; then out_file=$(/bin/mktemp -q -p "$tmp_dir" antiword.$ext.XXXXXXXXX) || exit 1 err_file=$(/bin/mktemp -q -p "$tmp_dir" antiword.err.XXXXXXXXX) txt_file=$(/bin/mktemp -q -p "$tmp_dir" antiword.txt.XXXXXXXXX) if [ $? -ne 0 ]; then rm -f "$out_file" exit 1 fi else # Creating the temp files in an un-secure way out_file="$tmp_dir/antiword.$$.$ext" err_file="$tmp_dir/antiword.$$.err" txt_file="$tmp_dir/antiword.$$.txt" fi error=0 # filename is empty, user had clicked on icon, so print a help message # in err_file if [ -z $2 ]; then cat >"$err_file" <<EOF You should drag any *.doc file and drop it on this icon for displaying. Kantiword can not do anything with an empty filename. EOF error=1 else # Determine the paper size paper_size=$1 shift # Make the output file (default PDF) antiword $mapping $format $paper_size -i 0 "$@" 2>"$err_file" >"$out_file" if [ $? -ne 0 ]; then error=1 fi fi if [ $error -ne 0 ]; then # Something went wrong if [ -r "$err_file" ] && [ -s "$err_file" ]; then if [ -x /usr/bin/konsole ]; then /usr/bin/konsole --hold --caption "Error from Antiword" -e more "$err_file" else /usr/bin/X11/xterm -T "Error from Antiword" -e less "$err_file" fi fi # Clean up rm -f "$out_file" "$err_file" "$txt_file" exit 1 fi # Show the PDF file if [ "$ext" = "pdf" -a -x /usr/bin/kpdf ]; then /usr/bin/kpdf "$out_file" elif [ "$ext" = "pdf" -a -x /usr/bin/xpdf ]; then /usr/bin/xpdf "$out_file" -paper=$paper_size elif [ -x /usr/bin/gv ]; then /usr/bin/gv "$out_file" --nocenter --media=$paper_size else # no viewer available, so display as plain text antiword $mapping "$@" 2>"$err_file" >"$txt_file" if [ -x /usr/bin/konsole ]; then /usr/bin/konsole --hold --caption "Text output from Antiword" -e more "$txt_file" else /usr/bin/X11/xterm -T "Text output from Antiword" -e less "$txt_file" fi fi # Clean up rm -f "$out_file" "$err_file" "$txt_file" exit 0