Hiển thị các bài đăng có nhãn Hệ điều hành mã nguồn mở. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Hệ điều hành mã nguồn mở. Hiển thị tất cả bài đăng

Shell: Viết script tính tổng S = 1 + ½ + 1/3 + ¼ + ... + 1/n (n nguyên, nhập từ bàn phím)

Người đăng: share-nhungdieuhay on Thứ Tư, 13 tháng 11, 2013


Mã nguồn:
clear
echo "n="
read n
i=1
s=0
while [ $i -le $n ]
do
  x=$(echo "scale=4; 1 / $i" | bc)
  s=$(echo "scale=4; $s + $x" | bc)
  i=`expr $i + 1`
done
echo "tong la: $s"
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng
More about

Shell: Viết script tính can chi của năm dương lịch.

Người đăng: share-nhungdieuhay

clear
echo "nam bang"
read nam
case `expr $nam % 10` in
    0)can="canh" ;;
    1)can="tan" ;;
    2)can="nham" ;;
    3)can="quy" ;;
    4)can="giap" ;;
    5)can="at" ;;
    6)can="binh" ;;
    7)can="dinh" ;;
    8)can="mau" ;;
    9)can="ky" ;;
esac
case `expr $nam % 12` in
    0)chi="than." ;;
    1)chi="dau." ;;
    2)chi="tuat." ;;
    3)chi="hoi." ;;
    4)chi="ty." ;;
    5)chi="suu." ;;
    6)chi="dan." ;;
    7)chi="mao." ;;
    8)chi="thin." ;;
    9)chi="ti." ;;
    10)chi="ngo." ;;
    11)chi="mui." ;;
esac
echo "$can - $chi"
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng
More about

Shell: Viết Script tính tổng các số lẻ từ 1-n (n nguyên, nhập từ bàn phím)

Người đăng: share-nhungdieuhay

clear
echo "n="
read n
i=1
tong=0
while [ $i -lt $n ]
do
  if [ `expr $i % 2` -ne 0 ]; then
      tong=`expr $tong + $i`
  fi
  i=`expr $i + 1`
done
echo "tong la: $tong"
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng lẻ
More about

Shell: Viết chương trình Shell giải phương trình bậc nhất : Ax + B = 0 (a, b nguyên, nhập từ bàn phím)

Người đăng: share-nhungdieuhay


clear
echo "Chuong trinh giai phuong trinh bac nhat"
echo "Nhap gia tri a = "
read a
echo "Nhap gia tri b = "
read b

if [ $a -eq 0 ];then
            if [ $b -eq 0 ];then
                        echo "Phuong trinh vo so nghiem"
            else
                        echo "Phuong trinh vo nghiem"
            fi
else
            x=$(echo "scale=3; (-$b)/$a" | bc)
            echo "Phuong trinh co 1 nghiem x = $x"
fi
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng, giải phương trình bậc nhất
More about

Shell: Viết Script giải hệ phương trình bậc nhất 2 ẩn.

Người đăng: share-nhungdieuhay on Thứ Bảy, 9 tháng 11, 2013

Ax + By = C
A1x + B1y = C1


hpt(){
          D=$(echo "scale=3; $1 * $5 - $2 * $4" | bc)
          Dx=$(echo "scale=3; $3 * $5 - $2 * $6" | bc)
          Dy=$(echo "scale=3; $1 * $6 - $3 * $4" | bc)
          if [ $D -ne 0 ];then
                   x1=$(echo "scale=3; $Dx/$D" | bc)
                   x2=$(echo "scale=3; $Dy/$D" | bc)
                   echo "Phuong trinh co nghiem duy nhat: x = ($x1,$x2)."
          elif [ $D -eq 0 ] && [ $Dx -eq 0 ] && [ $Dy -eq 0 ];then
                   echo "Phuong trinh vo so nghiem"
          else
                   echo "Phuong trinh vo nghiem"
          fi
}

hpt $1 $2 $3 $4 $5 $6

#Lưu ý: khi chạy admin@ubuntu~#/demo/bai1.sh  4 3 8 5 1 6

Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng, giải hệ phương trình bậc nhất 2 ẩn
More about

Shell: Viết script in ra chuỗi đảo ngược từ chuỗi ban đầu.

Người đăng: share-nhungdieuhay on Thứ Sáu, 8 tháng 11, 2013

Ví dụ: Chuỗi ban đầu: 123. Chuỗi đảo ngược: 321.
clear
echo -e -n "Nhap chuoi:\t"
read sau
h=${#sau}
until [ $h -le 0 ]
do     
          echo -n `expr substr $sau $h 1`
          h=$(($h - 1))
done
echo -e "\n"
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng, in chuỗi, chuỗi đảo ngược
More about

Shell: Viết script tính tổng các chữ số của 1 số nguyên được nhập vào từ bàn phím.

Người đăng: share-nhungdieuhay

clear
t=1
while [ $t -eq 1 ]
do
          clear
          echo -e -n "Nhap so:\t"
          read so

          if [ ${#so} -eq 3 ]; then
                   a=$(($so % 10))
                   b=$((($so / 10) % 10))
                   c=$((($so / 100) % 10))
                   echo -en "Tong cac ky so la: `expr $a + $b + $c`"
          else
                   echo -en "\nNhap so trong pham vi tu 100 -> 999."
          fi
         
          while [ $t -ne 0 ]
          do
                   echo -en "\nBan co muon tiep tuc? (Nhap 0 hoac 1)\t"
                   read t
                   if [ $t -eq 1 ];then
                             break
                   fi
          done
done
Tags: Lập trình Shell, lập trình Linux, Ubuntu, Script tính tổng
More about

Shell: Viết script tìm số lớn nhất, nhỏ nhất trong 3 số được nhập từ dòng lệnh

Người đăng: share-nhungdieuhay

clear
declare -a a
a=( [0]=$1 [1]=$2 [2]=$3 )
max=${a[0]}
min=${a[0]}
l=${#a[*]}
for ((i=0;i<$l;i++))
do
          if [ $max -le ${a[i]} ];then
                   max=${a[i]}
          else
                   min=${a[i]}
          fi
done
echo "Phan tu lon nhat la: $max"
echo "Phan tu nho nhat la: $min"

#Chạy lệnh:” admin@ubuntu~#/demo/test.sh 5 2 9 
More about

Shell: Viết chương trình Shell vẽ hình tam giác cân

Người đăng: share-nhungdieuhay on Thứ Hai, 21 tháng 10, 2013


# Lập trình Shell: Viết chương trình Shell vẽ hình tam giác cân
#!/bin/sh
echo "Chuong trinh ve hinh tam gia can dat"
height=$1
ktrang=$1
for ((i=1;i<=height;i++))
do
          for ((kt=ktrang; kt>=1; kt--))
          do
                   echo -n " "
          done

          for ((j=1; j<=i; j++))
          do
                   echo -n "* "
          done
          ktrang=$(($ktrang-1))
          echo ""       
done
echo "The end"

exit 0
Tags: Lập trình, shell script, shells, bash shell
More about

Shell: Viết chương trình Shell giải phương trình bậc hai : ax2 + bx + c = 0 (a, b, c nhập từ bàn phím)

Người đăng: share-nhungdieuhay


#Viết chương trình Shell giải phương trình bậc hai : ax2 + bx +c =0 với các tham số a, b, c nhập từ bàn #phím. và kết quả chính xác đến 2 chữ số.
Tải mã nguồn chương trình

#!/bin/bash
echo -n "Nhap a= "
read a
echo -n "Nhap b= "
read b
echo -n "Nhap c= "
read c

delta=$(echo "$b^2 - 4*$a*$c" | bc)
if [ $delta -lt 0 ] then
     echo "pt vo nghiem"
elif [ "$delta" -eq 0 ] then
     echo -n "pt co nghiem kep x= "
     x=$(echo "scale=2; -$b/(2*$a)" | bc)
     echo "$x"
else
     echo "phuong trinh co 2 nghiem"
     x1=$(echo "scale=2; -($b + sqrt($delta))/(2*$a)" | bc)
     echo "x1= $x1"
     x2=$(echo "scale=2; -($b - sqrt($delta))/(2*$a)" | bc)
     echo "x2= $x2"
fi
exit 0

Tải mã nguồn chương trình
More about

Open Source: Những câu lệnh và thao tác hữu ích trong Ubuntu

Người đăng: share-nhungdieuhay on Thứ Sáu, 11 tháng 10, 2013


Những thao tác và thủ thuật dưới đây có thể sẽ hữu ích cho bạn khi sử dụng Ubuntu cả 2 phiên bản Desktop và Server.
1. sudo: khi sudo được đi kèm trước một dòng lệnh nó sẽ gọi quyền root để thực thi câu lệnh đó, và khi thực thi xong nó sẽ trả lại quyền của user bạn đang dùng.
a. sudo apt-get install package_name: apt-get install sẽ tiến hành cài đặt gói phần mềm và bạn muốn cài đặt phần mềm gì thì thay package_name bằng tên của gói phần mềm cần cài đặt. Và bạn gọi sudo ở trước câu lệnh để yêu cầu quyền cài đặt của người dùng cao nhất ở đây là root hoặc xác nhận từ chính bạn nếu tên người dùng của bạn thuộc nhóm người dùng root.
VD: sudo apt-get install rar
b. sudo apt-get remove package_name: ngược lại của apt-get install, apt-get remove sẽ gỡ bỏ một gói phần mềm nào đó trong Ubuntu. Thay package_name bằng gói phần mềm bạn muốn gỡ bỏ.
VD: sudo apt-get remove rar
2. touch: tạo một file mới.
VD: touch hello.txt
&&: 2 ký từ && đi liên tiếp sẽ giúp bạn thực thi 2 câu lệnh với 1 dòng lệnh, tất nhiên nó sẽ thực thi 1 lệnh trước sau đó sẽ đến lệnh thứ 2. Câu lệnh dưới sẽ dùng touch để tạo một file mang tên helloworld.txt và sau đó sẽ dùng vi để mở và thêm nội dung vào file helloworld.txt
VD: touch helloworld.txt && vi helloworld.txt
3. wget download file dòng lệnh trên một host internet .
VD: wge http://getdeb.agetta.de/ubuntu/hardy…etdeb1_all.deb
4. dpkg: quản lý các gói phần mềm trong Ubuntu, muốn cài đặt 1 gói phần mềm bạn chỉ cần thêm vào tham số -i. Muốn gỡ bỏ thêm vào tham số -r. Bạn cần thêm lệnh sudo để có quyền tiến hành câu lệnh.
VD: dpkg -i ubuntu-tweak_0.3.5-1~getdeb1_all.deb #Sẽ cài đặt gói Ubuntu-Tweak
dpkg -r rar #Sẽ gỡ bỏ rar
5. ifconfig: các thông kết nối mạng và cấu hình mạng của máy.
6. ping: kiểm tra sự tồn tại của một máy tính nào đó trong mạng.
VD: ping 192.168.1.1
7. whereis: nếu bạn muốn biết một câu lệnh nằm ở đâu trong Ubuntu bạn chỉ gần gõ whereis câu lệnh
VD: whereis ls
8. find: tìm kiếm một tập tin. Câu lệnh dưới sẽ tìm trong đường dẫn thư mục /home/vunguyen tham số -name để tìm theo tên file và nếu như bạn muốn tìm file có đuôi là .txt thì chỉ gần thêm dấu * trước phần tên file mở rộng.
VD: find /home/vunguyen/ -name “*.txt”
9. uname -a: chỉ cần gõ là bạn sẽ biết được version của Linux kernel mà bạn đang sử dụng.
cat /etc/issue: phiên bản hiện tại của Ubuntu bạn đang dùng.
10. shutdown:
sudo shutdown -h now
sudo init 0
sudo halt

More about