benry-unixcmd 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 73411bbc7b8bd31e455acdc67c7ef3d12df08ec3aa0bab56d631fcf12395b34b
4
- data.tar.gz: 9fadc9355cf0006c83f48835c55197a4a9498a49b7e03f752af86eb951f03691
3
+ metadata.gz: 2ff5113d6cd99d3a50101096451203ade6c1f482ee0445fb92c54b7be806a92b
4
+ data.tar.gz: 130e7f320428382759597309256c39e9a50d0f8ab8e81d1854949f722f29b99d
5
5
  SHA512:
6
- metadata.gz: 14462cad893ee39cc9e9ae27977b0a71c76fd2b142c2878c14f52f93f9471186a66d2ed895d8e62b53ea3565b5312cd49782d4b1e9c3a8fc0eafcc38c6c53197
7
- data.tar.gz: 309f3813307636ff6adbe9b72f39fd01a4edf1bcf304b97ead6abd74787742795d7686fc40ededd3b97aa60816bea05dca3670a7e80a9999f6ae92b6acf126bb
6
+ metadata.gz: ffd7cc9973ff041b2478a5dbdb7c79ce93daf7214389bb8f5bf6caa561f181614cc68b085b0d2377bb11cc855108989bbc3e6dae7dfc34ff3c593586d45176a7
7
+ data.tar.gz: 4d9e61b09b80a5299327fc491605c92ea9f655b9737fac4d137b48590e61cf3e73c4e467cacbd5fde4cc1c9a50080fcc3349856e6f7ca4a1adfd7e19600bbd5e
data/MIT-LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2021 kuwata-lab.com
3
+ Copyright (c) 2021 kwatch@gmail.com
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -1,9 +1,16 @@
1
- benry-unixcmd Gem README
2
- ========================
1
+ # Benry-UnixCmd
3
2
 
4
- ($Release: 0.9.0 $)
3
+ ($Release: 0.9.1 $)
5
4
 
6
- benry-unixcmd gem implements popular UNIX commands, like FileUtils.
5
+
6
+ ## What's this?
7
+
8
+ Benry-UnixCmd implements popular UNIX commands, like FileUtils,
9
+ but much better than it.
10
+
11
+ * Document: <https://kwatch.github.io/benry-ruby/benry-unixcmd.html>
12
+ * GitHub: <https://github.com/kwatch/benry-ruby/tree/main/benry-unixcmd>
13
+ * Changes: <https://github.com/kwatch/benry-ruby/blob/main/benry-unixcmd/CHANGES.md>
7
14
 
8
15
  Features compared to FileUtils:
9
16
 
@@ -19,53 +26,54 @@ Features compared to FileUtils:
19
26
  * provides `store` command which copies files recursively into target directory, keeping file path.
20
27
  * provides `atomic_symlink!` command which switches symlink atomically.
21
28
 
22
- (benry-unixcmd gem requires Ruby >= 2.3)
29
+ (Benry-UnixCmd requires Ruby >= 2.3)
23
30
 
24
31
 
25
32
 
26
- Table of Contents
27
- =================
33
+ ### Table of Contents
28
34
 
29
35
  <!-- TOC -->
30
36
 
31
- * <a href="#install">Install</a>
32
- * <a href="#command-reference">Command Reference</a>
33
- * <a href="#echo"><code>echo</code></a>
34
- * <a href="#echoback"><code>echoback</code></a>
35
- * <a href="#cp"><code>cp</code></a>
36
- * <a href="#mv"><code>mv</code></a>
37
- * <a href="#rm"><code>rm</code></a>
38
- * <a href="#mkdir"><code>mkdir</code></a>
39
- * <a href="#rmdir"><code>rmdir</code></a>
40
- * <a href="#ln"><code>ln</code></a>
41
- * <a href="#atomic_symlink"><code>atomic_symlink!</code></a>
42
- * <a href="#touch"><code>touch</code></a>
43
- * <a href="#chmod"><code>chmod</code></a>
44
- * <a href="#chown"><code>chown</code></a>
45
- * <a href="#pwd"><code>pwd</code></a>
46
- * <a href="#store"><code>store</code></a>
47
- * <a href="#sys"><code>sys</code></a>
48
- * <a href="#ruby"><code>ruby</code></a>
49
- * <a href="#capture2"><code>capture2</code></a>
50
- * <a href="#capture2e"><code>capture2e</code></a>
51
- * <a href="#capture3"><code>capture3</code></a>
52
- * <a href="#zip"><code>zip</code></a>
53
- * <a href="#unzip"><code>unzip</code></a>
54
- * <a href="#time"><code>time</code></a>
55
- * <a href="#faq">FAQ</a>
56
- * <a href="#why-mv-or-cp-requires-to-option">Why <code>mv</code> or <code>cp</code> requires <code>to:</code> option?</a>
57
- * <a href="#how-to-use-in-rakefile">How to use in Rakefile?</a>
58
- * <a href="#how-to-change-prompt-string">How to change prompt string?</a>
59
- * <a href="#how-to-make-prompt-colored">How to make prompt colored?</a>
60
- * <a href="#how-to-disable-command-echoback">How to disable command echoback?</a>
61
- * <a href="#license-and-copyright">License and Copyright</a>
37
+ * [What's this?](#whats-this)
38
+ * [Install](#install)
39
+ * [Command Reference](#command-reference)
40
+ * [`echo`](#echo)
41
+ * [`echoback`](#echoback)
42
+ * [`cp`](#cp)
43
+ * [`mv`](#mv)
44
+ * [`rm`](#rm)
45
+ * [`mkdir`](#mkdir)
46
+ * [`rmdir`](#rmdir)
47
+ * [`ln`](#ln)
48
+ * [`atomic_symlink!`](#atomic_symlink)
49
+ * [`touch`](#touch)
50
+ * [`chmod`](#chmod)
51
+ * [`chown`](#chown)
52
+ * [`pwd`](#pwd)
53
+ * [`cd`](#cd)
54
+ * [`pushd`](#pushd)
55
+ * [`store`](#store)
56
+ * [`sys`](#sys)
57
+ * [`ruby`](#ruby)
58
+ * [`capture2`](#capture2)
59
+ * [`capture2e`](#capture2e)
60
+ * [`capture3`](#capture3)
61
+ * [`zip`](#zip)
62
+ * [`unzip`](#unzip)
63
+ * [`time`](#time)
64
+ * [FAQ](#faq)
65
+ * [Why `mv` or `cp` requires `to:` option?](#why-mv-or-cp-requires-to-option)
66
+ * [How to use in Rakefile?](#how-to-use-in-rakefile)
67
+ * [How to change prompt string?](#how-to-change-prompt-string)
68
+ * [How to make prompt colored?](#how-to-make-prompt-colored)
69
+ * [How to disable command echoback?](#how-to-disable-command-echoback)
70
+ * [License and Copyright](#license-and-copyright)
62
71
 
63
72
  <!-- /TOC -->
64
73
 
65
74
 
66
75
 
67
- Install
68
- =======
76
+ ## Install
69
77
 
70
78
  ```
71
79
  $ gem install benry-unixcmd
@@ -77,26 +85,25 @@ File: ex1.rb
77
85
  require 'benry/unixcmd' # !!!!!
78
86
  include Benry::UnixCommand # !!!!!
79
87
 
80
- output = capture2 "ls -al" # run command and return output
81
- #print output
88
+ output = capture2 "uname -srmp" # run command and return output
89
+ p output
82
90
  ```
83
91
 
84
92
  Result:
85
93
 
86
94
  ```terminal
87
- [localhost] ruby ex1.rb
88
- $ ls -al
95
+ [localhost]$ ruby ex1.rb
96
+ $ uname -srmp
97
+ "Darwin 22.5.0 arm64 arm\n"
89
98
  ```
90
99
 
91
100
 
92
101
 
93
- Command Reference
94
- =================
102
+ ## Command Reference
95
103
 
96
104
 
97
105
 
98
- `echo`
99
- ------
106
+ ### `echo`
100
107
 
101
108
  File: ex-echo1.rb
102
109
 
@@ -127,8 +134,7 @@ Options:
127
134
 
128
135
 
129
136
 
130
- `echoback`
131
- ----------
137
+ ### `echoback`
132
138
 
133
139
  * `echoback "command"` prints `$ command` string into stdout.
134
140
  * `echoback "command"` indents command if in block of `cd` or `pushd`.
@@ -163,8 +169,7 @@ $ cd -
163
169
 
164
170
 
165
171
 
166
- `cp`
167
- ----
172
+ ### `cp`
168
173
 
169
174
  * `cp "x", "y"` copies `x` to new file `y'. Fails when `y` already exists.
170
175
  * `cp! "x", "y"` is similar to above, but overwrites `y` even if it exists.
@@ -172,6 +177,7 @@ $ cd -
172
177
  * `cp "x", "y", "dir"` will be error! (use `to: "dir"` instead.)
173
178
  * Glob pattern such as `*`, `**`, `?`, and `{}` are available.
174
179
  * (See [FAQ](#faq) about `to:` keyword option.)
180
+ * If you want to copy files with keeping directory structure, use `store` instead of `cp`.
175
181
 
176
182
  <!--
177
183
  File: ex-cp1.rb
@@ -202,8 +208,7 @@ Options:
202
208
 
203
209
 
204
210
 
205
- `mv`
206
- ----
211
+ ### `mv`
207
212
 
208
213
  * `mv "x", "y"` renames `x` to `y`. Fails when `y` already exists.
209
214
  * `mv! "x", "y"` is similar to above, but overwrites `y` even if it exists.
@@ -241,8 +246,7 @@ Options:
241
246
 
242
247
 
243
248
 
244
- `rm`
245
- ----
249
+ ### `rm`
246
250
 
247
251
  * `rm "x", "y"` removes file `x` and `y`.
248
252
  * `rm :r, "dir1"` removes directory recursively.
@@ -275,8 +279,7 @@ Options:
275
279
 
276
280
 
277
281
 
278
- `mkdir`
279
- -------
282
+ ### `mkdir`
280
283
 
281
284
  * `mkdir "x", "y"` creates `x` and `y` directories.
282
285
  * `mkdir :p, "x/y/z"` creates `x/y/z` directory.
@@ -309,8 +312,7 @@ Options:
309
312
 
310
313
 
311
314
 
312
- `rmdir`
313
- -------
315
+ ### `rmdir`
314
316
 
315
317
  * `rmdir "x", "y"` removed empty directores.
316
318
  * Raises error when directory not empty.
@@ -333,8 +335,7 @@ Options:
333
335
 
334
336
 
335
337
 
336
- `ln`
337
- ----
338
+ ### `ln`
338
339
 
339
340
  * `ln "x", "y"` creates hard link.
340
341
  * `ln :s, "x", "y"` creates symbolic link. Error if `y` already exists.
@@ -361,14 +362,13 @@ ln! :s, "foo1.txt", "dir/foo1.txt" # overwrites dir/foo1.txt if exists.
361
362
  ## create symbolic link into directory.
362
363
  ln :s, "foo1.txt", to: "dir"
363
364
 
364
- ## error! use `to: "dir"` instead.
365
+ ## error! use ``to: "dir"`` instead.
365
366
  ln :s, "foo1.txt", "dir"
366
367
  ```
367
368
 
368
369
 
369
370
 
370
- `atomic_symlink!`
371
- -----------------
371
+ ### `atomic_symlink!`
372
372
 
373
373
  * `atomic_symlink! "x", "y"` creates symbolic link atomically.
374
374
 
@@ -395,8 +395,7 @@ Options:
395
395
 
396
396
 
397
397
 
398
- `touch`
399
- -------
398
+ ### `touch`
400
399
 
401
400
  * `touch "x"` updates timestamp of file.
402
401
  * `touch :r, "reffile", "x"` uses timestamp of `reffile` instead current timestamp.
@@ -424,8 +423,7 @@ Options:
424
423
 
425
424
 
426
425
 
427
- `chmod`
428
- -------
426
+ ### `chmod`
429
427
 
430
428
  * `chmod 0644, "x"` changes file permission.
431
429
  * `chmod :R, "a+r", "dir"` changes permissions recursively.
@@ -448,14 +446,13 @@ chmod :R, 0644, "dir"
448
446
  chmod :R, "a+r", "dir"
449
447
  ```
450
448
 
451
- Optionns:
449
+ Options:
452
450
 
453
451
  * `chmod :R` -- changes permissions recursively.
454
452
 
455
453
 
456
454
 
457
- `chown`
458
- -------
455
+ ### `chown`
459
456
 
460
457
  * `chown "user:group", "x", "y"` changes owner and group of files.
461
458
  * `chown "user", "x", "y"` changes owner of files.
@@ -476,14 +473,13 @@ chown "user1", "file*.txt" # change owner
476
473
  chown ":group1", "file*.txt" # change group
477
474
  ```
478
475
 
479
- Optionns:
476
+ Options:
480
477
 
481
478
  * `chown :R` -- changes owner and/or group recursively.
482
479
 
483
480
 
484
481
 
485
- `pwd`
486
- -----
482
+ ### `pwd`
487
483
 
488
484
  * `pwd()` prints current working directory path.
489
485
 
@@ -496,7 +492,106 @@ require 'benry/unixcmd'
496
492
  include Benry::UnixCommand
497
493
 
498
494
  ## prints current working directory
499
- pwd()
495
+ pwd() #=> /home/yourname (for example)
496
+ ```
497
+
498
+ Options:
499
+
500
+ * (no options)
501
+
502
+
503
+
504
+ ### `cd`
505
+
506
+ * `cd` changes current working directory.
507
+ * If block given, `cd` invokes block just after changing current directory,
508
+ and back to previous directory automatically.
509
+ * Within block argument, echoback indentation is increased.
510
+ * `chdir` is an alias to `cd`.
511
+
512
+ File: ex-cd1.rb
513
+
514
+ ```ruby
515
+ require 'benry/unixcmd'
516
+ include Benry::UnixCommand
517
+
518
+ ## change directory, invoke block, and back to previous directory.
519
+ pwd() #=> /home/yourname (for example)
520
+ cd "/tmp" do
521
+ pwd() #=> /tmp
522
+ end
523
+ pwd() #=> /home/yourname (for example)
524
+
525
+ ## just change directory
526
+ cd "/tmp"
527
+ pwd() #=> /tmp
528
+ ```
529
+
530
+ Result:
531
+
532
+ ```terminal
533
+ [localhost]$ ruby ex-cd1.rb
534
+ $ pwd
535
+ /home/yourname
536
+ $ cd /tmp
537
+ $ pwd
538
+ /tmp
539
+ $ cd -
540
+ $ pwd
541
+ /home/yourname
542
+ $ cd /tmp
543
+ $ pwd
544
+ /tmp
545
+ ```
546
+
547
+ Options:
548
+
549
+ * (no options)
550
+
551
+
552
+
553
+ ### `pushd`
554
+
555
+ * `pushd` changes current directory, invokes block, and back to previous directory.
556
+ * `pushd` requires block argument. `cd` also takes block argument but it is an optional.
557
+ * Within block argument, echoback indentation is increased.
558
+
559
+ File: ex-pushd1.rb
560
+
561
+ ```ruby
562
+ require 'benry/unixcmd'
563
+ include Benry::UnixCommand
564
+
565
+ ## change directory, invoke block, and back to previous directory.
566
+ pwd() #=> /home/yourname (for example)
567
+ pushd "/var" do
568
+ pwd() #=> /var
569
+ pushd "tmp" do
570
+ pwd() #=> /var/tmp
571
+ end
572
+ pwd() #=> /var
573
+ end
574
+ pwd() #=> /home/yourname (for example)
575
+ ```
576
+
577
+ Result:
578
+
579
+ ```terminal
580
+ [localhost]$ ruby ex-pushd1.rb
581
+ $ pwd
582
+ /home/yourname
583
+ $ pushd /var
584
+ $ pwd
585
+ /var
586
+ $ pushd tmp
587
+ $ pwd
588
+ /var/tmp
589
+ $ popd # back to /var
590
+ $ pwd
591
+ /var
592
+ $ popd # back to /home/yourname
593
+ $ pwd
594
+ /home/yourname
500
595
  ```
501
596
 
502
597
  Options:
@@ -505,8 +600,7 @@ Options:
505
600
 
506
601
 
507
602
 
508
- `store`
509
- -------
603
+ ### `store`
510
604
 
511
605
  * `store "x", "y", to: "dir", ` copies files under `x` and `y` to `dir` keeping file path.
512
606
  For example, `x/foo/bar.rb` will be copied as `dir/x/foo/bar.rb`.
@@ -522,6 +616,9 @@ include Benry::UnixCommand
522
616
 
523
617
  ## copies files into builddir, keeping file path
524
618
  store "lib/**/*.rb", "test/**/*.rb", to: "builddir"
619
+
620
+ ## `store()` is similar to unix `tar` command.
621
+ ## $ tar cf - lib/**/*.rb test/**/*.rb | (cd builddir; tar xf -)
525
622
  ```
526
623
 
527
624
  Options:
@@ -532,8 +629,7 @@ Options:
532
629
 
533
630
 
534
631
 
535
- `sys`
536
- -----
632
+ ### `sys`
537
633
 
538
634
  * `sys "ls -al"` runs `ls -al` command.
539
635
  * `sys` raises error when command failed.
@@ -550,7 +646,7 @@ File: ex-sys1.rb
550
646
  require 'benry/unixcmd'
551
647
  include Benry::UnixCommand
552
648
 
553
- ## run `ls` command
649
+ ## run ``ls`` command
554
650
  sys "ls foo.txt" # may raise error when command failed
555
651
  sys! "ls foo.txt" # ignore error even when command filed
556
652
 
@@ -568,8 +664,7 @@ Options:
568
664
 
569
665
 
570
666
 
571
- `ruby`
572
- ------
667
+ ### `ruby`
573
668
 
574
669
  * `ruby "...."` is almost same as `sys "ruby ...."`.
575
670
  * `RbConfig.ruby` is used as ruby command path.
@@ -595,13 +690,12 @@ Options:
595
690
 
596
691
 
597
692
 
598
- `capture2`
599
- ----------
693
+ ### `capture2`
600
694
 
601
695
  * `capture2 "ls -al"` runs `ls -al` and returns output of the command.
602
696
  * `capture2 "cat -n", stdin_data: "A\nB\n"` run `cat -n` command and uses `"A\nB\n"` as stdin data.
603
- * `caputre "ls foo"` will raise error when command failed.
604
- * `caputre! "ls foo"` ignores error even when command failed, and returns command output and process status object.
697
+ * `caputre2 "ls foo"` will raise error when command failed.
698
+ * `caputre2! "ls foo"` ignores error even when command failed, and returns command output and process status object.
605
699
  * `capture2()` invokes `Popen3.capture2()` internally. All keyword arguments are available.
606
700
 
607
701
  <!--
@@ -613,9 +707,9 @@ require 'benry/unixcmd'
613
707
  include Benry::UnixCommand
614
708
 
615
709
  ## run command and get output of the command.
616
- output = capture2 "ls -l foo.txt" # error if command failed
617
- output, process_status = capture2 "ls -l foot.xt" # ignore error even command failed
618
- puts process_status.exitstatus
710
+ output = capture2 "ls -l foo.txt" # error if command failed
711
+ output, process_status = capture2! "ls -l foot.xt" # ignore error even command failed
712
+ puts process_status.exitstatus #=> 1
619
713
 
620
714
  ## run command with stdin data.
621
715
  input = "AA\nBB\nCC\n"
@@ -628,8 +722,7 @@ Options:
628
722
 
629
723
 
630
724
 
631
- `capture2e`
632
- -----------
725
+ ### `capture2e`
633
726
 
634
727
  * almost same as `capture2`, but output contains both stdout and stderr.
635
728
 
@@ -653,10 +746,9 @@ Options:
653
746
 
654
747
 
655
748
 
656
- `capture3`
657
- ----------
749
+ ### `capture3`
658
750
 
659
- * almost same as `capture3`, but returns both stdout output and stderr output.
751
+ * almost same as `capture2`, but returns both stdout output and stderr output.
660
752
 
661
753
  <!--
662
754
  File: ex-capture3.rb
@@ -682,8 +774,7 @@ Options:
682
774
 
683
775
 
684
776
 
685
- `zip`
686
- -----
777
+ ### `zip`
687
778
 
688
779
  * `zip "foo.zip", "file1", "file2"` creates new zip file `foo.zip`.
689
780
  * `zip :r, "foo.zip", "dir1"` adds files under `dir1` into zip file recursively.
@@ -692,7 +783,8 @@ Options:
692
783
  * `zip :'0'` doesn't compress files.
693
784
  * `zip :'1'` compress files in best speed.
694
785
  * `zip :'9'` compress files in best compression level.
695
- * `zip` and `zip!` requires `rubyzip` gem. You must install it by yourself.
786
+ * `zip` and `zip!` loads `rubyzip` gem automatically. You must install it by yourself.
787
+ * (`rubyzip` gem is necessary ONLY when `zip` or `zip!` command is invoked.)
696
788
  * `zip` and `zip!` doesn't support absolute path.
697
789
 
698
790
  <!--
@@ -722,8 +814,7 @@ Options:
722
814
 
723
815
 
724
816
 
725
- `unzip`
726
- -------
817
+ ### `unzip`
727
818
 
728
819
  * `unzip "foo.zip"` extracts files in zip file into current directory.
729
820
  * `unzip :d, "dir1", "foo.zip"` extracts files under `dir1`.
@@ -731,7 +822,8 @@ Options:
731
822
  * `unzip "foo.zip"` will be error if extracting file already exists.
732
823
  * `unzip! "foo.zip"` will overwrite existing files.
733
824
  * `unzip "foo.txt", "file1", "file2"` extracts only `file1` and `file2`.
734
- * `zunip` and `unzip!` requires `rubyzip` gem. You must install it by yourself.
825
+ * `zunip` and `unzip!` loads `rubyzip` gem automatically. You must install it by yourself.
826
+ * (`rubyzip` gem is necessary ONLY when `unzip` or `unzip!` command is invoked.)
735
827
  * `unzip` and `unzip!` doesn't support absolute path.
736
828
 
737
829
  <!--
@@ -758,8 +850,7 @@ Options:
758
850
 
759
851
 
760
852
 
761
- `time`
762
- ------
853
+ ### `time`
763
854
 
764
855
  * `time do ... end` invokes block and prints elapsed time into stderr.
765
856
 
@@ -770,7 +861,7 @@ require 'benry/unixcmd'
770
861
  include Benry::UnixCommand
771
862
 
772
863
  time do
773
- sh "zip -qr9 dir1.zip dir1"
864
+ sys "zip -qr9 dir1.zip dir1"
774
865
  end
775
866
  ```
776
867
 
@@ -785,13 +876,11 @@ $ zip -qr9 dir1.zip dir1
785
876
 
786
877
 
787
878
 
788
- FAQ
789
- ====
879
+ ## FAQ
790
880
 
791
881
 
792
882
 
793
- Why `mv` or `cp` requires `to:` option?
794
- ---------------------------------------
883
+ ### Why `mv` or `cp` requires `to:` option?
795
884
 
796
885
  Because UNIX command has bad interface which causes unexpected result.
797
886
 
@@ -819,8 +908,7 @@ In the same reason, `cp()` and `ln()` of Benry::UnixCommand also requires `to:`
819
908
 
820
909
 
821
910
 
822
- How to use in Rakefile?
823
- -----------------------
911
+ ### How to use in Rakefile?
824
912
 
825
913
  File: Rakefile
826
914
 
@@ -830,6 +918,7 @@ include Benry::UnixCommand # !!!!!
830
918
  Rake::DSL.prepend Benry::UnixCommand # !!!!!
831
919
 
832
920
  task :example do
921
+ ## invoke commands defined in Benry::UnixCommand, not in Rake nor fileutils.rb
833
922
  mkdir :p, "foo/bar/baz"
834
923
  here = Dir.pwd()
835
924
  pushd "foo/bar/baz" do
@@ -852,8 +941,7 @@ $ popd # back to /home/yourname
852
941
 
853
942
 
854
943
 
855
- How to change prompt string?
856
- ----------------------------
944
+ ### How to change prompt string?
857
945
 
858
946
  File: ex-prompt1.rb
859
947
 
@@ -865,7 +953,7 @@ def prompt() # !!!!!
865
953
  "myname@localhost>" # !!!!!
866
954
  end # !!!!!
867
955
 
868
- sh "date"
956
+ sys "date"
869
957
  ```
870
958
 
871
959
  Result:
@@ -878,8 +966,7 @@ Wed Jan 15 20:23:07 UTC 2021
878
966
 
879
967
 
880
968
 
881
- How to make prompt colored?
882
- ---------------------------
969
+ ### How to make prompt colored?
883
970
 
884
971
  <!--
885
972
  File: ex-prompt2.rb
@@ -900,13 +987,12 @@ def prompt()
900
987
  #"\e[0;37m#{s}\e[0m" # white
901
988
  end
902
989
 
903
- sh "date"
990
+ sys "date"
904
991
  ```
905
992
 
906
993
 
907
994
 
908
- How to disable command echoback?
909
- --------------------------------
995
+ ### How to disable command echoback?
910
996
 
911
997
  File: ex-quiet1.rb
912
998
 
@@ -916,7 +1002,7 @@ include Benry::UnixCommand
916
1002
 
917
1003
  BENRY_ECHOBACK = false # !!!!!
918
1004
 
919
- sh "date"
1005
+ sys "date"
920
1006
  ```
921
1007
 
922
1008
  Result:
@@ -928,9 +1014,8 @@ Wed Jan 1 22:29:55 UTC 2020 # no echoback, only output
928
1014
 
929
1015
 
930
1016
 
931
- License and Copyright
932
- =====================
1017
+ ## License and Copyright
933
1018
 
934
1019
  $License: MIT License $
935
1020
 
936
- $Copyright: copyright(c) 2021 kuwata-lab.com all rights reserved $
1021
+ $Copyright: copyright(c) 2021 kwatch@gmail.com $