BASH/C2/String-and-File-attributes/Gujarati

From Script | Spoken-Tutorial
Jump to: navigation, search

Title of script: String and File Attributes comparison in Bash

Author: Jyoti Solanki

Keywords: video tutorial, ==, !=, string compare, file attributes.


Time Narration
00:01 નમસ્તે મિત્રો, Bash (બેશ) માં String (સ્ટ્રીંગ) અને File Attributes (ફાઈલ એટ્રીબ્યુટો) ની તુલના પરનાં સ્પોકન ટ્યુટોરીયલમાં સ્વાગત છે.
00:10 આ ટ્યુટોરીયલમાં, આપણે શીખીશું
00:13 String comparison (સ્ટ્રીંગ તુલના) તથા File attributes comparison (ફાઈલ એટ્રીબ્યુટોની તુલના)
00:18 આપણે આ બધું કેટલાક ઉદાહરણોનાં મદદથી કરીશું.
00:22 આ ટ્યુટોરીયલ માટે, હું વાપરી રહ્યી છું
00:25 ઉબુન્ટુ લીનક્સ 12.04 ઓપરેટીંગ સીસ્ટમ અને
00:30 GNU BASH આવૃત્તિ 4.1.10
00:34 કૃપા કરી નોંધ લો, આ ટ્યુટોરીયલનાં અભ્યાસ માટે GNU Bash આવૃત્તિ 4 કે તેથી વધુ આગ્રહ કરીએ છીએ.
00:42 ચાલો પરિચયથી શરૂઆત કરીએ.
00:45 બેશમાં સ્ટ્રીંગની તુલના કરવાનાં બે પ્રકાર છે.
00:49 1) પહેલું: == (ઈક્વલ ટુ ઈક્વલ ટુ) ઓપરેટર વાપરીને.
00:53 બે સમાન સ્ટ્રીંગની તુલના કરવા માટે.
00:56 2) બીજું: != (નોટ ઈક્વલ ટુ) ઓપરેટર વાપરીને.
00:59 બે સમાન ન હોય એવી સ્ટ્રીંગની તુલના કરવા માટે.
01:03 ચાલો ઉદાહરણ જોઈએ.
01:06 અહીં મારી પાસે એક સાદું પ્રોગ્રામ છે, જે user ID (યુઝર આઈડી) તપાસ કરે છે.
01:11 તમારા એડિટરમાં એક ફાઈલ ખોલો અને તેને strcompare ડોટ sh તરીકે સંગ્રહો.
01:19 હવે, અહીં બતાવ્યા પ્રમાણે, તમારી strcompare ડોટ sh ફાઈલમાં કોડ ટાઈપ કરો.
01:26 ચાલો હું કોડ સમજાઉં.
01:28 shebang line (શીબેંગ લાઈન) છે.
01:31 whoami કમાંડ વર્તમાન user (યુઝર) નું username (યુઝરનેમ) આપે છે.
01:36 if સ્ટેટમેંટ વેરીએબલ whoami નાં આઉટપુટને string “root” (સ્ટ્રીંગ “root”) સાથે તપાસ કરી જુએ છે.
01:44 strings ની તુલના કરવા માટે અહીં આપણે not-equal to ઓપરેટરનો ઉપયોગ કર્યો છે.
01:50 જો વર્તમાન યુઝર root user (રૂટ યુઝર) ન હોય, તો તે આ સ્ટેટમેંટ echo (એકો) કરશે -
01:57 “You have no permission to run strcompare dot sh as non-root user.”
02:05 અહીં, $0 (ડોલર ઝીરો)zeroeth (શૂન્યમી) આર્ગ્યુંમેંટ છે જે પોતે એક ફાઈલનામ છે.
02:13 યુઝર જો root user (રૂટ યુઝર) હોય, તો તે “Welcome root!” - એકો કરશે.
02:18 ત્યારબાદ આપણી પાસે પ્રોગ્રામ માટે exit (એક્ઝીટ) સ્ટેટમેંટ છે.
02:23 અને અહીં fi વડે આપણે if statement (ઈફ સ્ટેટમેંટ) નો અંત કરીએ છીએ.
02:28 exit statement (એક્ઝીટ સ્ટેટમેંટ) વિશે વધુ વિગતમાં જાણવા માટે ચાલો આપણી સ્લાઈડ પર પાછા ફરીએ.
02:34 દરેક પ્રોગ્રામ exit status (એક્ઝીટ સ્ટેટસ) પાછું આપે છે.
02:38 સફળ કમાંડ 0 (ઝીરો) પાછું આપે છે.
02:42 એરર રહેલ કમાંડ non-zero (નોન-ઝીરો) વેલ્યુ પાછી આપે છે.
02:47 તેને error code (એરર કોડ) તરીકે ઇન્ટરપ્રીટ કરી શકાય છે.
02:51 આપણે exit statement (એક્ઝીટ સ્ટેટમેંટ) ની પાછી મળેલ વેલ્યુને કસ્ટમાઇઝ કરી શકીએ છીએ.
02:56 હવે, ચાલો પ્રોગ્રામ એક્ઝીક્યુટ કરીએ.
02:58 તમારા કીબોર્ડ પર Ctrl+Alt અને T કી એકસાથે દાબીને ટર્મિનલ ખોલો.
03:08 પહેલા, ચાલો સીસ્ટમનું વર્તમાન યુઝર તપાસ કરીએ.
03:12 ટાઈપ કરો whoami
03:15 Enter દબાવો.
03:17 આનાથી વર્તમાન યુઝરનું નામ આઉટપુટ પર અપાશે.
03:21 હવે ચાલો આપણી સ્ક્રીપ્ટને એક્ઝીક્યુટ કરવા યોગ્ય બનાવીએ.
03:25 ટાઈપ કરો chmod +x strcompare ડોટ sh
03:32 ટાઈપ કરો ડોટ સ્લેશ strcompare ડોટ sh
03:37 આઉટપુટ આ પ્રમાણે દેખાય છે :
03:39 You have no permission to run dot slash strcompare dot sh as non-root user.
03:47 હવે ચાલો સમાન પ્રોગ્રામને root user (રૂટ યુઝર) તરીકે એક્ઝીક્યુટ કરીએ.
03:52 ટાઈપ કરો: sudo ડોટ સ્લેશ strcompare ડોટ sh
03:58 તે પાસવર્ડ માટે પ્રોમ્પ્ટ કરશે.
04:01 અહીં તમારો પાસવર્ડ આપો.
04:04 આઉટપુટ આ પ્રમાણે દેખાય છે: Welcome root!.
04:08 હવે, ચાલો file attributes (ફાઈલ એટ્રીબ્યુટો) ની તુલના વિશે શીખીએ.
04:13 મારી પાસે પહેલાથી જ કોડનું એક કાર્ય કરતુ ઉદાહરણ છે.
04:17 આ પ્રોગ્રામમાં, આપણે આપેલ ફાઈલ ઉપલબ્ધ છે કે નહી તે તપાસ કરીશું.
04:23 file1 આ વેરીએબલ છે જેમાં આપણે ફાઈલનો પાથ સંગ્રહીત કર્યો છે.
04:29 -(હાઈફન) f કમાંડ ફાઈલ ઉપલબ્ધ છે કે નહી
04:33 અને તે સામાન્ય ફાઈલ છે કે નહી તે તપાસે છે.
04:37 કંડીશન જો true (ટ્રુ) હોય, તો તે આપેલ echo (એકો) કરશે "File exists and is a normal file"
04:44 નહી તો, તે echo (એકો) કરશે "File does not exis"
04:48 terminal (ટર્મિનલ) પર પાછા જઈએ ચાલો આપણી ફાઈલ એક્ઝીક્યુટ કરીએ.
04:53 ટાઈપ કરો chmod plus x fileattrib ડોટ sh
05:00 ટાઈપ કરો : ડોટ સ્લેશ fileattrib ડોટ sh
05:05 આઉટપુટ આ રીતે દેખાય છે:
05:07 File exists and is a normal file.
05:11 હવે આપણે તપાસ કરીશું કે ફાઈલ ખાલી છે કે નહી.
05:16 આપણું પ્રોગ્રામ એક્ઝીક્યુટ કરીએ એ પહેલા, હું empty ડોટ sh નામની એક ખાલી ફાઈલ બનાવીશ.
05:24 ટાઈપ કરો gedit empty ડોટ sh એમ્પરસંડ ચિન્હ.
05:31 Save (સેવ) પર ક્લિક કરો, ફાઈલને બંધ કરો.
05:35 ચાલો - (હાઈફન) f એટ્રીબ્યુટનાં બદલે - (હાઈફન) s એટ્રીબ્યુટ બદલી કરીએ.
05:41 અહીં ફાઈલનેમ પણ બદલી કરીએ.
05:45 ટાઈપ કરો empty ડોટ sh
05:47 હવે, પહેલા echo statement (એકો સ્ટેટમેંટ) ને આપેલથી બદલી કરીએ :
05:51 “File exists and is not empty”
05:54 અને બીજા echo statement (એકો સ્ટેટમેંટ) ને આપેલથી બદલી કરીએ :
05:57 “File is empty”
05:59 Save (સેવ) પર ક્લિક કરો.
06:01 ટર્મિનલ પર પાછા આવીએ.
06:03 ચાલો હું પ્રોમ્પ્ટ સાફ કરું.
06:06 ચાલો એક્ઝીક્યુટ કરીએ.
06:08 ટાઈપ કરો : ડોટ સ્લેશ fileattrib ડોટ sh અને Enter દબાવો.
06:13 આઉટપુટ આ પ્રમાણે છે File is empty.
06:17 હવે, ચાલો બીજી ફાઈલ એટ્રીબ્યુટ જોઈએ, જે કે કોઈપણ ફાઈલની write premission (રાઈટ પરમિશન) તપાસ કરશે.
06:24 આપણા પ્રોગ્રામ પર પાછા આવીએ.
06:26 ચાલો - (હાઈફન) s એટ્રીબ્યુટથી - (હાઈફન) w બદલી કરીએ.
06:32 હવે પહેલા echo statement (એકો સ્ટેટમેંટ) નાં બદલે મુકીએ :
06:36 “User has write permission to this file”
06:40 અને બીજા echo statement (એકો સ્ટેટમેંટ) નાં બદલે મુકીએ :
06:43 “User doesn't have write permission to this file”
06:47 Save (સેવ) પર ક્લિક કરો.
06:49 આ ઉદાહરણ માટે હું જુદી ફાઈલને ઉપયોગમાં લઈશ.
06:53 હું એક એવી ફાઈલ પસંદ કરીશ, જે કે એક ન વાંચી શકનાર ફાઈલ છે અથવા કે write permission ધરાવતી નથી.
07:01 ચાલો હું filepath (ફાઈલપાથ) આપેલથી બદલી કરું
07:04 “slash etc slash mysql slash debian dot cnf”
07:10 Save (સેવ) પર ક્લિક કરો.
07:12 ચાલો આપણું પ્રોગ્રામ એક્ઝીક્યુટ કરીએ.
07:15 up-arrow key (અપ-એરો કી) દબાવો. Enter (એન્ટર) દબાવો.
07:19 આપણને આ રીતે આઉટપુટ મળે છે :
07:21 User doesn't have write permission to this file.
07:26 હવે, ચાલો ફાઈલ એટ્રીબ્યુટો પર આધારિત બીજું એક ઉદાહરણ જોઈએ.
07:31 આ ઉદાહરણમાં, આપણે તપાસ કરીશું કે file1file2 કરતા નવી છે કે નહી.
07:38 ચાલો પ્રોગ્રામ જોઈએ.
07:40 આપણી ફાઈલનું નામ fileattrib2 ડોટ sh છે તેની નોંધ લો.
07:46 ચાલો કોડ મારફતે જઈએ.
07:48 અહીં આપણી પાસે બે વેરીએબલો છે file1 અને file2.
07:53 બે ફાઈલો પહેલાથી જ બનાવવામાં આવી છે અને તે ખાલી છે.
07:58 અહીં આપણે તપાસ કરીશું કે file1file2 કરતા નવી છે કે નહી.
08:04 condition (કંડીશન) જો true (ટ્રુ) હોય, તો આપણે file1 is newer than file2 પ્રીંટ કરીએ છીએ.
08:09 નહી તો, file2 is newer than file1 પ્રીંટ કરીએ છીએ.
08:14 આ બીજું if statement (ઈફ સ્ટેટમેંટ) છે.
08:16 અહીં આપણે તપાસ કરીએ છીએ કે file1file2 કરતા જૂની છે કે નહી.
08:21 condition (કંડીશન) જો true (ટ્રુ) હોય, તો આપણે file1 is older than file2 પ્રીંટ કરીએ છીએ.
08:27 નહી તો, આપણે file2 is older than file1 પ્રીંટ કરીએ છીએ.
08:32 આપણા ટર્મિનલ પર પાછા આવીએ.
08:35 પહેલા, આપણે empty1 ડોટ sh ફાઈલને એડિટ કરીશું.
08:39 હું આમાં એક echo statement (એકો સ્ટેટમેંટ) ઉમેરીશ.
08:42 ટાઈપ કરો : echo બમણા અવતરણમાં Hiii બમણા અવતરણ પછી greater than sign empty one ડોટ sh. અને Enter દબાવો.
08:53 હવે, ચાલો આપણી સ્ક્રીપ્ટને એક્ઝીક્યુટ કરવા યોગ્ય બનાવીએ.
08:57 ટાઈપ કરો chmod plus x fileattrib2 ડોટ sh
09:03 હવે ટાઈપ કરો ડોટ સ્લેશ fileattrib2 ડોટ sh
09:09 આપણને આ રીતે આઉટપુટ મળે છે :
09:11 file1 is newer than file2
09:15 file2 is older than file1
09:19 હવે ચાલો empty2 ડોટ sh ફાઈલને એડિટ કરીએ.
09:23 અહીં પણ હું એક echo statement (એકો સ્ટેટમેંટ) ઉમેરીશ.
09:27 ટાઈપ કરો echo બમણા અવતરણમાં How are you અવતરણ પછી (greater than sign) > empty2 ડોટ sh.
09:38 ચાલો હું પ્રોમ્પ્ટ સાફ કરું.
09:41 હવે ચાલો આપણી સ્ક્રીપ્ટને ફરીથી એક્ઝીક્યુટ કરીએ.
09:45 અપ-એરો કી દબાવો.
09:47 ડોટ સ્લેશ fileattrib2 ડોટ sh પર જાવ અને Enter દબાવો.
09:53 હવે આ રીતે આઉટપુટ દેખાય છે :
09:55 file2 is newer than file1
09:59 અને file1 is older than file2
10:03 અહીં આ ટ્યુટોરીયલનો અંત થાય છે.
10:06 ચાલો સારાંશ લઈએ.
10:08 આ ટ્યુટોરીયલમાં આપણે શીખ્યા,
10:11 String comparison (સ્ટ્રીંગની તુલના), file attributes (ફાઈલ એટ્રીબ્યુટો)
10:14 ==(ઈક્વલ ટુ ઈક્વલ ટુ)
10:16 != (નોટ ઈક્વલ ટુ), -f (હાઈફન f)
10:18 -s(હાઈફન s), -w(હાઈફન w)
10:21 -nt(હાઈફન nt), અને -ot (હાઈફન ot) એટ્રીબ્યુટો.
10:25 એસાઈનમેંટ તરીકે - હજુ કેટલાક એટ્રીબ્યુટોનું અન્વેષણ કરો.
10:29 ઉદાહરણ તરીકે: -r

-x

અને -o

10:33 નીચે દર્શાવેલ લીંક પર ઉપલબ્ધ વિડીયો નિહાળો.
10:36 તે સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટનો સારાંશ આપે છે.
10:40 જો તમારી પાસે સારી બેન્ડવિડ્થ ન હોય તો, તમે વિડીયો ડાઉનલોડ કરીને જોઈ શકો છો.
10:45 સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ ટીમ
10:47 સ્પોકન ટ્યુટોરીયલોનાં ઉપયોગથી વર્કશોપોનું આયોજન કરે છે.
10:51 જેઓ ઓનલાઈન પરીક્ષા પાસ કરે છે તેઓને પ્રમાણપત્રો આપે છે.
10:55 વધુ વિગતો માટે, કૃપા કરી, contact@spoken-tutorial.org પર લખો.
11:02 સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ ટોક ટુ અ ટીચર પ્રોજેક્ટનો એક ભાગ છે.
11:06 જેને આઈસીટી, એમએચઆરડી, ભારત સરકાર મારફતે શિક્ષણ પર નેશનલ મિશન દ્વારા આધાર અપાયેલ છે.
11:14 આ મિશન પર વધુ માહિતી નીચે દર્શાવેલ લીંક પર ઉપલબ્ધ છે. http://spoken-tutorial.org/NMEICT-Intro
11:19 આ સ્ક્રીપ્ટ માટે ફાળો FOSSEE અને સ્પોકન ટ્યુટોરીયલ ટીમ દ્વારા અપાયેલ છે.
11:25 IIT Bombay તરફથી હું, જ્યોતી સોલંકી વિદાય લઉં છું.
11:29 જોડાવાબદ્દલ આભાર.

Contributors and Content Editors

Jyotisolanki, PoojaMoolya