لینوکس و شبکه

لینوکس و شبکه
طبقه بندی موضوعی
آخرین مطالب
  • ۹۹/۱۱/۱۳
    java

۸ مطلب با موضوع «ProgrammingAndScript» ثبت شده است

۱۳
بهمن

مراحل نصب یک نسخه جدید از جاوا

شناساندن جاوا(JRE)

sudo update-alternatives --install "/usr/bin/java" "java" "<Custom PATH>/bin/java" 0

شناساندن جاوا(JDK)

sudo update-alternatives --install "/usr/bin/javac" "javac" "<Custom PATH>/bin/javac" 0

شناساندن جاوا (Web Start)

sudo update-alternatives --install "/usr/bin/javaws" "javaws" "<Custom PATH>/bin/javaws" 0

 

نکته‌مهم

 در ورژن‌های شماره ۷ یا ۸  مورد javaws یا java web start وجود داشت ولی در ورژن‌های بالاتر این مورد وجود ندارد که برای این کار با نصب بسته icedtea می‌توانیم javaws را به سیستم معرفی کنیم

sudo apt install icedtea-netx 
sudo yum install icedtea-web

در این صورت برنامه های با فرمت jnlp می‌توانیم با دستور زیر اجرا نماییم

/usr/bin/javaws /tmp/launch.jnlp 

 

مشاهده گانفیگ فعلی جاوا

java -version
sudo update-alternatives --list java
sudo update-alternatives --list javac
sudo update-alternatives --list javaws

 

 

کانفیگ کردن یک جاوای جدید

اگر هیج جاوایی در سیستم نداشته باشیم همان اولین جاوا بعنوان پیش فرض تلقی خواهد شود ولی اگر از پیش جاوا با نسخه دیگری درسیستم موجود باشد باید تنظیمات را از جاوای نسحه قبل به جاوای نسخه جدید منتقل نماییم:

sudo update-alternatives --config java
sudo update-alternatives --config javac
sudo update-alternatives --config javaws

یا به روش زیر عمل نماییم

sudo update-alternatives --set java  <PATH>
sudo update-alternatives --set javac <PATH>
sudo update-alternatives --set javaws <PATH>

 

حذف یک نسخه از جاوا

برای حذف یک نسخه از جاوا بهتر است از دستور زیر اقدام نمایید

گام اول: مشاهده نسخه ها به همراه مسیرهای آنها

java -version
sudo update-alternatives --list java
sudo update-alternatives --list javac
sudo update-alternatives --list javaws

گام دوم: حذف نسخه مورد نظر توسط ارائه مسیر آن ورژن

sudo update-alternatives --remove java <Path>
sudo update-alternatives --remove javac <Path>
sudo update-alternatives --remove javaws <Path>

example:
sudo update-alternatives --remove java /opt/java8/bin/java

گام سوم: تعیین نسخه مطلوب باقیمانده از نسخه‌های جاوا بعنوان پیش‌فرض

sudo update-alternatives --config java
sudo update-alternatives --config javac
sudo update-alternatives --config javaws

 

 

 

 

 

 

 

 

 

 

  • behrooz mohamadi nsasab
۲۱
دی

برای pars کردن یک عبارت json می‌توان از دستور زیر که تلفیقی از کد پایتون نیز می‌باشد استفاده نمود

 

echo '{"hostname":"test","domainname":"example.com"}' | python -c 'import json,sys;obj=json.load(sys.stdin);print obj["hostname"]'

 

برای اطلاعات بیشتر به لینک مراجعه نمایید

  • behrooz mohamadi nsasab
۱۴
آبان

دستور شیفت در اسکریپت نویسی:

  • دستور شیفت فقط یک عدد بعنوان آرگومان می‌پذیرد
  • دستور شیفت عددی بین صفر تا تعداد آرگومان می‌پذیرد
  • در دستور شیفت عدد صفر هیچ کاری نمی‌کند
  • اگر خط شیفت با عدد ۱ اجرا بشود. آنگاه آرگومان یک را نادیده گرفته و آرگومان شماره دو بعنوان آرگومان شماره یک، تلقی خواهد شد
shift 1
  • گر خط شیفت با عدد ۲ اجرا بشود. آنگاه آرگومان یک و دو  نادیده گرفته شده و آرگومان شماره سه بعنوان آرگومان شماره یک، تلقی خواهد شد
shift 2
  • گر خط شیفت با عدد پنج اجرا بشود. آنگاه آرگومان یک و دو وسه و چهار و پنج  نادیده گرفته و آرگومان شماره شش بعنوان آرگومان شماره یک، تلقی خواهد شد
shift 5
  • بطور خلاصه می‌توان گفت «به اندازه عدد داده شده به دستور شیفت» آرگومان ورودی را حذف کرده و آرگومان بعدی را بعنوان یک درنظر خواهد گرفت
  •  

 

  • behrooz mohamadi nsasab
۱۶
مرداد

${parameter:=word}:

If parameter is unset or null, the expansion of word is assigned to parameter.
The value of parameter is then substituted. 
Positional parameters and special parameters may not be assigned to in this way.

${var:-value}: 

if ${var} is set and not null, or value otherwise.
The ${var-value} construct is similar, but checks only that the variable is set.

${var:=value} and ${var=value}:

if var is unset (and also set, but null for the := form).

${var:?message}:

display message to stderr and then exit if var is unset or null.
This should generally not be used within ebuilds as it does not use the die mechanism.
There is a ${var?message} form too.

${var:+value}:

if var is set and not null, or a blank string otherwise.
There is a ${var+value} form.

 

 

URL

  • behrooz mohamadi nsasab
۱۷
فروردين

تبدیل  jsonObject به Key=Value

$ cat test.json
{
    "var": 1,
    "foo": "bar",
    "x": "test"
}
$ jq -r "to_entries|map(\"\(.key)=\(.value|tostring)\")|.[]" test.json
foo=bar
var=1
x=test

 

curl -s 'https://api.github.com/users/lambda' | jq -r '.name'

 

URL

URL

URL

  • behrooz mohamadi nsasab
۱۰
بهمن
برای تبدیل یک اسکریپت شل به فایل اجرایی که محتوی آن قابل نمایش نباشد از دستور زیر میتوان استفاده کرد
به عبارت دیگر دستور زیر فایل کامپایل شده را بصورت فایل اجرایی‌ای که محتوی قابل نمایش نیست در خواهد آورد


shc -f NAME.sh
  • behrooz mohamadi nsasab
۲۳
تیر
برای نمایش یک پیغام بصورت notification از دستور زیر استفاده میکنیم:
notify-send 'title' 'message'
notify-send -u critical "job complete"
zenity --timeout=180 --notification --text "salam behrooooooooooooooz"

برای نمایش یک پیغام بصورت messageBox که بصورت یک ویندوز ظاهر شود و متنی را به نمایش گذارد از دستور زیر استفاده می‌شود:

zenity --error --text="An error occurred\!" --title="Warning\!"
find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."
zenity --question --text="Do you wish to continue/?"
zenity \
--info \
--text="<span size=\"xx-large\">Time is $(date +%Hh%M).</span>\n\nGet your <b>coffee</b>." \
--title="Coffee time" \
--ok-label="Sip"
my_variable=$(zenity --entry --text="What's my variable:");echo $my_variable
zenity --calendar
اگر بخواهیم در یک متن با خاصیت بلی ویا خیر در قلب ترمینال نمایش شود (همانند ok و Cancell در حین نصب آپاچی) از دستور زیر استفاده می‌نماییم:
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78

نمایش یک پنجره به سبک برنامه نویسی ویژوال:
echo My text | yad \
--text-info \
--width=400 \
--height=200

yad \
--title="Desktop entry editor" \
--text="Simple desktop entry editor" \
--form \
--field="Type:CB" \
--field="Name" \
--field="Generic name" \
--field="Comment" \
--field="Command:FL" \
--field="Icon" \
--field="In terminal:CHK" \
--field="Startup notify:CHK" "Application" "Name" "Generic name" "This is the comment" "/usr/bin/yad" "yad" FALSE TRUE \
--button="WebUpd8:2" \
--button="gtk-ok:0" \
--button="gtk-cancel:1"

دستوری برای گرفتن پسورد روت سیستم:
gksudo lsof
gksudo lsof | zenity --text-info --width 530


Create a Message Box:

whiptail --title "<message box title>" --msgbox "<text to show>" <height> <width>

Example:

#!/bin/bash
whiptail --title "Test Message Box" --msgbox "Create a message box with whiptail. Choose Ok to continue." 10 60





Create a Yes/No Box

whiptail --title "<dialog box title>" --yesno "<text to show>" <height> <width>

Example:

#!/bin/bash
if (whiptail --title "Test Yes/No Box" --yesno "Choose between Yes and No." 10 60) then
    echo "You chose Yes. Exit status was $?."
else
    echo "You chose No. Exit status was $?."
fi

Example:

#!/bin/bash
if (whiptail --title "Test Yes/No Box" --yes-button "Skittles" --no-button "M&M's"  --yesno "Which do you like better?" 10 60) then
    echo "You chose Skittles Exit status was $?."
else
    echo "You chose M&M's. Exit status was $?."
fi





Create a Free-form Input Box

whiptail --title "<input box title>" --inputbox "<text to show>" <height> <width> <default-text>

Example:

#!/bin/bash
PET=$(whiptail --title "Test Free-form Input Box" --inputbox "What is your pet's name?" 10 60 Wigglebutt 3>&1 1>&2 2>&3)
 
exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "Your pet name is:" $PET
else
    echo "You chose Cancel."
fi





Create a Password Box

whiptail --title "<password box title>" --passwordbox "<text to show>" <height> <width>

Example:

#!/bin/bash
PASSWORD=$(whiptail --title "Test Password Box" --passwordbox "Enter your password and choose Ok to continue." 10 60 3>&1 1>&2 2>&3)
 
exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "Your password is:" $PASSWORD
else
    echo "You chose Cancel."
fi





Create a Menu Box

whiptail --title "<menu title>" --menu "<text to show>" <height> <width> <menu height> [ <tag> <item> ] . . .

Example:

#!/bin/bash
OPTION=$(whiptail --title "Test Menu Dialog" --menu "Choose your option" 15 60 4 \
"1" "Grilled Spicy Sausage" \
"2" "Grilled Halloumi Cheese" \
"3" "Charcoaled Chicken Wings" \
"4" "Fried Aubergine"  3>&1 1>&2 2>&3)
 
exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "Your chosen option:" $OPTION
else
    echo "You chose Cancel."
fi





Create a Radiolist Dialog

whiptail --title "<radiolist title>" --radiolist "<text to show>" <height> <width> <list height> [ <tag> <item> <status> ] . . .

Example:

#!/bin/bash
DISTROS=$(whiptail --title "Test Checklist Dialog" --radiolist \
"What is the Linux distro of your choice?" 15 60 4 \
"debian" "Venerable Debian" ON \
"ubuntu" "Popular Ubuntu" OFF \
"centos" "Stable CentOS" OFF \
"mint" "Rising Star Mint" OFF 3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "The chosen distro is:" $DISTROS
else
    echo "You chose Cancel."
fi





Create a Checklist Dialog

whiptail --title "<checklist title>" --checklist "<text to show>" <height> <width> <list height> [ <tag> <item> <status> ] . . .

Example:

#!/bin/bash
DISTROS=$(whiptail --title "Test Checklist Dialog" --checklist \
"Choose preferred Linux distros" 15 60 4 \
"debian" "Venerable Debian" ON \
"ubuntu" "Popular Ubuntu" OFF \
"centos" "Stable CentOS" ON \
"mint" "Rising Star Mint" OFF 3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "Your favorite distros are:" $DISTROS
else
    echo "You chose Cancel."
fi





Create a Progress Bar

whiptail --gauge "<test to show>" <height> <width> <inital percent>

Example:

#!/bin/bash
{
    for ((i = 0 ; i <= 100 ; i+=20)); do
        sleep 1
        echo $i
    done
} | whiptail --gauge "Please wait while installing" 6 60 0




  • behrooz mohamadi nsasab
۱۶
خرداد

برای نصب برنامه pycharm که یک ادیتور هست که  کد پایتون را کامپایل میکند به روش زیر عمل میکنیم(نصب در دبیان9)
نکته: از لینک آخر این دایکومنت برای نصب در توزیع‌های دیگر نیز میتوانید استفاده نمایید

گام اول: بارگردن آدرس  URL

گام دوم: instal this package

گام سوم: select opration sysstem

گام چهارم:  select server to download

گام پنجم:

sudo apt-get install pycharm-community-sloppy



  • behrooz mohamadi nsasab