grep コマンドで複数のパターンを検索する際には、-E オプションを使用するか、| をエスケープ(\|)する必要があります。-E オプションを使用すると、grep は拡張正規表現をサポートします。これにより、| をエスケープせずに複数のパターンを検索できます。
sshd -T | grep -i -E 'SyslogFacility|PermitRootLogin|PermitEmptyPasswords|PasswordAuthentication'
「|」の前後のスペースを入れない。
スペースを入れると意図したマッチングが変わる可能性があります。例えば、次のように記述すると:
regexp1 | regexp2
この場合、正規表現は「regexp1」と「regexp2」にスペースがあることを期待します。したがって、スペースを入れると、マッチする条件が変わるため、注意が必要です。
root で。
# visudo
以下の行を追加。username は sudo 権限を付与したいユーザ名。
username ALL=(ALL) ALL
server(root)
dnf install tigervnc-server
vi /etc/tigervnc/vncserver.users
systemctl enable --now vncserver@:1.service
dnf --enablerepo=epel,epel-next group install "Xfce" "base-x"
dnf --enablerepo=epel,epel-next install vlgothic-*
dnf groupinstall "Input Methods"
vi /etc/yum.repos.d/google-chrome.repo
dnf install google-chrome-stable
dnf install gedit
server(user(test))
vncpasswd
vi ~/.vnc/config
localhost
nolisten=tcp
local-1
$ ssh -v -C -L 50000:localhost:5901 192.168.1.3 -l test
local-2
$ vncviewer
<script>
const globalVar = "変数の値が変更されない";
let globalVar = "変数の値が変更される可能性がある";
let globalVar2;
function myFunction() {
globalVar2 = "関数内で得られた変数をグローバル変数とする";
}
</script>
※ let、const キーワードを使用して宣言されたグローバル変数は、windowオブジェクトのプロパティとはなりません。
直接的にはできないが、オブジェクトのプロパティを使用して同様のことを行うことができる。
let obj = {};
for (let i = 0; i < 10; i++) {
obj['key' + i] = i;
}
objという名前の空のオブジェクトを作成し、ループ内でkey0からkey9までのプロパティを動的に追加しています。各プロパティの値は、そのキーの末尾の数字と同じです。つまり、key0の値は0、key1の値は1、というようになります。
このオブジェクトのプロパティは、以下のようにアクセスできます:
console.log(obj.key0); // 0
console.log(obj.key1); // 1
// ...
console.log(obj.key9); // 9
または、
console.log(obj['key0']); // 0
console.log(obj['key1']); // 1
// ...
console.log(obj['key9']); // 9
これらの方法を使用すれば、JavaScriptでkey0=0、key1=1、…といった動的な変数を作成することができます。ただし、これらの"変数"は実際にはobjオブジェクトのプロパティであることを覚えておいてください。このため、objオブジェクトを介さないとアクセスできません。
ループ無し(デフォルト)
ffmpeg -i input.mp4 output.webp
無限ループ(-loopオプションが必要)
ffmpeg -i input.mp4 -loop 0 output.webp
※ 「-i input.mp4」 : 入力ファイルを指定します。この場合、「input.mp4」という動画ファイルが入力となります。
※ Image Viewer で見るとみんなループしてしまう。
確認は、web ページ上でする。
ffmpeg -i input.mp4 -vf scale=640:-1 output.webp
※ 「-vf scale=640:-1」は幅を640ピクセルに設定し、高さをアスペクト比を保持したまま自動的に設定します。逆に、「-vf scale=-1:640」は高さを640ピクセルに設定し、幅をアスペクト比を保持したまま自動的に設定します。
<?php
$image = new Imagick('input.jpg'); // 入力画像ファイル
$image->setImageFormat('webp'); // 出力形式をwebpに設定
$image->setImageCompressionQuality(80); // 画像の品質を設定(0-100の範囲、高いほど品質が良い)
$image->writeImage('output.webp'); // 出力ファイル名
?>
if (extension_loaded('imagick')) {
echo 'Imagickを使用します。';
} elseif (extension_loaded('gd')) {
echo 'GDを使用します。';
} else {
echo 'ImagickもGDも利用できません。';
}
これは SVG ではありません。「href="data:image/png;base64,~"」は「データURLスキーム」と呼ばれるもので、画像データを直接HTMLやCSSに埋め込むための形式です。
この形式では、「data:」の後にメディアタイプ(この場合は「image/png」)、次にデータのエンコーディング(この場合は「base64」)、そして実際のエンコードされたデータ(この場合は「~」)が続きます。
したがって、このデータURLはPNG画像を表しています。SVGとは異なり、PNGはラスターグラフィックス形式で、ピクセルデータを直接エンコードします。一方、SVGはベクターグラフィックス形式で、画像を数学的な形状とパスで記述します。
/etc/php-fpm.d/www.conf で設定されているuserとgroup。
例えば、
user = apache
group = apache